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.
HTTP protokolas
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ą:
URL: https://http-statuscode.com/errorCodeExample.php?code=408
Statusas: 408 Request Timeout
Šie: Network
IP adresas: XX.XX.XX.XX
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
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.
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.
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