408

Request Timeout

Oficialus
Prašymo pateikimo laikas baigėsi

Bendras būsenos kodo 408 paaiškinimas

HTTP būsenos kodas 408 Request Timeout gaunamas, kai kliento (pvz., žiniatinklio naršyklės) užklausa serveriui siunčiama arba užbaigiama per ilgai. Serveris laukia tik tam tikrą laiką, kol bus gauti visi reikalingi duomenys, ir nutraukia ryšį, jei šis laikas viršijamas. Ši klaida gali atsirasti dėl lėto ar nestabilaus interneto ryšio, techninių kliento ar serverio problemų arba dėl per didelių ar sudėtingų užklausų. Vartotojui tai dažnai pasireiškia tuo, kad svetainė visiškai neužkraunama arba ryšys staiga nutrūksta. Nauja užklausa, pavyzdžiui, atnaujinant puslapį, dažnai išsprendžia problemą, tačiau taip pat gali būti naudinga patikrinti savo interneto ryšio arba serverio prieinamumą.

HTTP būsenos kodo 408 specifikacija

408 Request Timeout būsenos kodas rodo, kad serveris negavo išsamaus užklausos pranešimo per laiką, kurį buvo pasirengęs laukti. Serveris atsakyme TURI siųsti ryšio parinktį "uždaryti" ([RFC7230] 6.1 skirsnis), nes 408 Request Timeout reiškia, kad serveris nusprendė uždaryti ryšį, o ne toliau laukti. Jei klientas turi neįvykdytą užklausą, jis GALI pakartoti tą užklausą nauju ryšiu.

Šaltinis / citata iš: HTTP būsenos kodas 408 Request Timeout nurodytas 6.5.7 skirsnyje 6.5.7.

Kaip naudojant PHP išmesti 408 būsenos kodą?

Norint žiniatinklio puslapyje nurodyti HTTP būsenos kodą 408, galima naudoti PHP funkciją http_response_code. Sintaksė tokia: http_response_code(408) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

HTTP būsenos kodo 408 testavimas

Kad kliento pusėje būtų galima rodyti HTTP būsenos kodą (šiuo atveju 408 Request Timeout) ir kitą informaciją, kūrimo konsolę reikia atidaryti klavišu F12. Tada pereikite prie skirtuko "Network" (tinklas). Dabar galima atidaryti puslapį, tinklo skirtuke turi būti matoma svetainė (pavyzdys index.php). Ją reikia pasirinkti, o tada reikia pasirinkti skyrių Herder (Herderis). Tada naudotojas matys tokį rezultatą:

Būsenos kodas 408 Request Timeout
Apžvalga
URL: https://http-statuscode.com/errorCodeExample.php?code=408
Statusas: 408 Request Timeout
Šie: Network
IP adresas: XX.XX.XX.XX
Būsenos kodas 408 Request Timeout

Kaip išspręsti 408 būsenos kodo problemą?

Tinklalapių operatoriams HTTP būsenos kodas 408 Request Timeout "Request Timeout" paprastai rodo, kad serveris yra perkrautas arba kad laiko limito nustatymai yra per trumpi. Pirmiausia reikėtų patikrinti serverio išteklius ir įsitikinti, kad yra pakankamai procesoriaus, atminties ir duomenų srauto pralaidumo. Jei serveris reguliariai pasiekia savo pajėgumų ribas, gali prireikti padidinti arba optimizuoti infrastruktūrą. Taip pat reikėtų patikrinti serverio laiko limito nustatymus ir, jei reikia, juos pakoreguoti, kad gautoms užklausoms apdoroti būtų skiriama daugiau laiko. Be to, turinio pristatymo tinklas (CDN) gali padėti greičiau pateikti turinį, ypač geografiškai nutolusiems naudotojams. Serverio žurnaluose dažnai pateikiama vertingos informacijos apie laiko trukmių priežastis, todėl juos reikėtų reguliariai analizuoti. Taip pat reikėtų patikrinti, ar svetainėje nėra didelių ar sudėtingų užklausų, kurias galbūt galima optimizuoti arba išskaidyti į mažesnius vienetus ir taip sumažinti serverio apkrovą. Priemones užbaigia patogus klaidos puslapis, kuriame naudotojams pateikiami naudingi nurodymai, kaip iš naujo įkelti puslapį.

Vartotojams, susidūrusiems su 408 Request Timeout klaida, yra keletas paprastų problemos sprendimo būdų. Dažnai pakanka iš naujo įkelti puslapį, nes klaida dažnai būna tik laikina. Jei problema išlieka, patartina patikrinti savo interneto ryšį, nes dažnai jos priežastis būna lėtas arba nestabilus ryšys. Šiuo atveju gali padėti maršrutizatoriaus paleidimas iš naujo arba naudojimasis kitu tinklu. Jei klaida ir toliau kartojasi, tai gali būti dėl pasenusių arba nekokybiškų naršyklės duomenų. Gali padėti ištrinti talpyklą bei slapukus ir išbandyti naudojant kitą naršyklę ar įrenginį. Taip pat reikėtų patikrinti saugumo programas, pavyzdžiui, ugniasienes arba tarpinių serverių nustatymus, kurie gali riboti duomenų srautą. Taikant šias priemones klaidą dažnai galima ištaisyti ir atkurti ryšį su svetaine.

Kaip sukurti savo klaidų puslapį, kuriame būtų rodomas būsenos kodas 408

Sukurti savo 408 Request Timeout klaidos puslapį gana paprasta naudojant tiek "Apache", tiek "NGINX" žiniatinklio serverius.

Apache Webserver

Interneto serveris "Apache" yra vienas iš labiausiai paplitusių interneto svetainių serverių. Norėdami sukurti savo 408 Request Timeout klaidos puslapį "Apache", šiame faile reikia atlikti toliau nurodytus pakeitimus.

File: .htaccess
ErrorDocument 408 /errors/408.html

NGINX Webserver

Panašiai kaip ir žiniatinklio serveris "Apache", "NGINX" taip pat plačiai naudojamas internete. Norėdami sukurti savo 408 Request Timeout klaidos puslapį "NGINX", šiame faile reikia atlikti toliau nurodytus pakeitimus.

File: sites-enabled/default
error_page 408 /408.html;
location = /408.html {
    root /usr/share/nginx/html;
    internal;
}

408 būsenos kodo suderinamumas su naršyklėmis

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Konstantos programavimo kalbose

HttpStatusCode.RequestTimeout
http.StatusRequestTimeout
Response::HTTP_REQUEST_TIMEOUT
httplib.REQUEST_TIMEOUT
http.client.REQUEST_TIMEOUT
http.HTTPStatus.REQUEST_TIMEOUT
:request_timeout

Išorinės nuorodos, kuriose pateikiama daugiau informacijos apie HTTP būsenos kodą 408:

Autorius: Tony Brüser
Autorius: Tony Brüser

Tony Brüseris yra entuziastingas žiniatinklio kūrėjas, mėgstantis HTTP būsenos kodus.

LinkedInGitHub