In die wêreld van webontwikkeling speel HTTP-foutkodes 'n belangrike rol om die gebruikerservaring en reputasie van 'n webwerf te beïnvloed. In hierdie artikel sal ons 'n volledige lys van bedienerfoutkodes oorweeg, die betekenis daarvan ontleed en leer hoe om bedienerresponskodes effektief te interpreteer om probleme op te los en die werkverrigting van die webtoepassings te optimaliseer.
Wat is 'n HTTP-reaksiekode
HTTP-reaksiekode is die taal van webbedieners wat blaaierversoeke in verstaanbare instruksies vertaal. Dit is soos 'n digter wat virtuele vrae beantwoord, betekenis en rigting aan hulle gee. Reaksiekodes is nie altyd HTTP-foutkodes nie. Byvoorbeeld, "200 OK" beteken dat alles in orde is, maar HTTP-fout "404 nie gevind nie" beteken wanneer die bladsy in die virtuele ruimte verlore gaan. Elke kode is 'n unieke uitdrukking van die bedienertoestand, waarvan die dekodering ons in staat stel om te verstaan wat aan die ander kant van die virtuele wêreld gebeur.
1xx kodes (Inligting)
1xx-statuskodes in die HTTP-protokol is 'n soort eerste skakel in die dialoog tussen die bediener en die kliënt. In plaas daarvan om 'n volledige antwoord op 'n versoek te verskaf, verskaf hulle inligting oor die huidige status, wat data-uitruiling doeltreffender maak. Kom ons kyk nader na hulle:
100 Gaan voort . HTTP-responskode waarin die bediener die groen lig aan die gebruiker gee, wat hom toelaat om veilig voort te gaan met die stuur van 'n groot versoek.
101 Oorskakeling van Protokolle . Die bediener sê vir die kliënt dat dit die reëls van die spel verander, byvoorbeeld, van HTTP na die veiliger HTTPS oorskakel. In hierdie geval word die "Opgradering"-koptekst vir die protokolverandering gebruik.
102 Verwerking . Hierdie kode is soos 'n boodskap dat die bediener die versoek aanvaar het, maar steeds besig is met 'n komplekse operasie.
103 Vroeë Wenke . Hier stuur die bediener verskeie aanduidende opskrifte na die kliënt voor die hoofrespons, wat waarsku oor iets wat in die nabye toekoms relevant mag wees.
2xx-kode (Suksesvol)
HTTP-foutkodes in die groep 2xx dui op 'n suksesvolle versoek vanaf die bediener. Hulle tree in wese op as 'n "groen lig" in die bestek van webkommunikasie, wat bevestig dat alles volgens plan verloop en suksesvol afgehandel is.
200 OK . Hierdie status word gebruik wanneer die bediener 'n versoek sonder probleme met die GET-metode verwerk en die aangevraagde data in reaksie terugstuur. Die "Content-Type"-koptekst rapporteer die inhoudtipe in die reaksie. Dit stel die kliënt net in kennis dat die versoek suksesvol was.
201 Geskep . Hier kondig die bediener die skepping van 'n nuwe hulpbron aan.
202 Aanvaar . Die bediener laat die gebruiker weet dat die versoek aanvaar is, maar dit sal tyd neem om te reageer.
203 Nie-gesaghebbende inligting . Hierdie kode verskaf die kliënt data wat dalk nie amptelik is nie, maar vir vergelyking gebruik kan word.
204 Geen inhoud nie . Die bediener het die versoek verwerk, maar stuur geen bykomende inhoud terug nie.
205 Herstel inhoud . Hier word die kliënt opdrag gegee om die huidige aansig of data terug te stel na versending.
206 Gedeeltelike inhoud . Hierdie geval dui aan dat die antwoord slegs 'n deel van die versoekte inhoud bevat. Die "Inhoudreeks"-opskrif dui die gedeeltelike inhoudreeks aan.
207 Multi-status. Die bediener het 'n multi-bewerkingsversoek van die kliënt suksesvol voltooi, en die antwoord bevat inligting oor die status van elk van die bewerkings.
226 IM gebruik . Hierdie kode dui aan dat die bediener die Inkrementele Metadata (IM) metode gebruik het en gereageer het deur slegs die gewysigde hulpbrondele aan die kliënt deur te gee.
3xx-kodes (herleidings)
3xx-kodes in die HTTP-protokol is soos wysers wat die gebruiker na 'n nuwe hulpbronligging lei. Hulle lig die kliënt in dat opvolgstappe geneem moet word om die gevraagde inhoud te bekom of om na 'n ander hulpbron herlei te word. Kom ons verdiep in die besonderhede van elkeen van hulle:
300 Meervoudige Keuses . Die kliënt ontvang 'n sein dat daar verskeie moontlike liggings vir die hulpbron is en word 'n keuse in reaksie gegee. In huidige omstandighede kan die "Ligging"-opskrif alternatiewe opsies vir die hulpbron aandui.
301 Permanent Verskuif. Die bediener rapporteer terug aan die gebruiker dat die hulpbron permanent na 'n ander plek verskuif is.
302 Gevind . Hierdie HTTP-kode is soortgelyk aan 'n tydelike herleiding. Die bediener stel die verbruiker in kennis dat die hulpbron tydelik beskikbaar is by 'n ander URL. Die "Ligging"-opskrif wys na die nuwe URL vir die tydelike herleiding.
303 Sien Ander . Die kliënt word meegedeel dat die hulpbron by 'n ander URL beskikbaar is en moet 'n GET-versoek na hierdie nuwe adres rig.
304 Nie Gewysig Nie . Hierdie status sê vir die kliënt dat die hulpbron onveranderd gebly het sedert die laaste versoek en nie weer afgelaai hoef te word nie. Wanneer 'n versoek gemaak word, word die "If-Modified-Since"-koptekst gebruik om te kyk of die hulpbron gewysig is.
305 Gebruik Proxy. As 'n reaksie rapporteer die bediener dat dit die gespesifiseerde proxy moet gebruik om toegang tot die versoekte hulpbron te verkry.
306 (gereserveer) — Die kode is gereserveer, maar word in werklikheid nie gebruik nie.
307 Tydelike Herleiding . Hierdie kode is soortgelyk aan 302 Gevind, maar vereis dat die kliënt in die versoekmetode bly wat in die oorspronklike versoek gebruik is.
308 Permanente Herleiding . Dui aan dat die hulpbron permanent na 'n nuwe URI geskuif het en dat die kliënt die nuwe URI vir alle toekomstige versoeke moet gebruik.
4xx HTTP-fout (kliëntfoute)
HTTP 4xx-foutkodes dui kliëntfoute aan. Dit beteken dat die probleem aan die gebruikerkant is, soos die webblaaier of toepassing.
400 Slegte versoek . Die bediener kan nie die versoek verwerk nie as gevolg van sintaksisfoute, ongeldige data of ander foute aan die kliëntkant.
401 Ongemagtig. Die bediener kan nie die versoek verwerk nie as gevolg van sintaksfoute, ongeldige data of ander foute aan die kliëntkant.
402 Betaling Vereis . Die kode is tans nie aktief nie en is gereserveer vir toekomstige gebruik. Dit mag aandui dat daar betaal moet word voordat toegang tot die hulpbron in die toekoms verkry word.
HTTP-fout 403 Verbode. Die kliënt het nie voldoende regte om toegang tot die versoekte hulpbron te verkry nie.
404 Nie gevind nie. Die aangevraagde hulpbron bestaan nie op die bediener nie. Dit is een van die mees algemene gebruikersfoute.
405 Metode nie toegelaat nie . Die bediener ondersteun nie die gespesifiseerde versoekmetode gedurende hierdie hulpbron nie. Die "Toelaat"-opskrif dui die toegelate metodes vir die hulpbron aan. Met hierdie kode,
406 Nie aanvaarbaar nie. Die bediener kan nie data verskaf in 'n formaat wat deur die kliënt aanvaar kan word nie.
407 Proxy-verifikasie vereis . Verifikasie op die proxy-bediener is nodig vir toegang tot die versoekte hulpbron.
408 Versoektydverstryking . Die bediener het gewag om 'n versoek van die kliënt te ontvang, maar die tydsverloop het verstryk. Die "Herprobeer-na"-opskrif kan die tyd aandui waarna die versoek herprobeer kan word.
409 Konflik. Die versoek kan nie voltooi word nie as gevolg van 'n konflik met die huidige hulpbronstatus.
410 Weg . Die aangevraagde hulpbron het voorheen bestaan, maar is nou verwyder en die herstel daarvan word nie verwag nie.
411 Vereiste lengte . Die bediener eis dat die inhoudlengte in die versoek gespesifiseer word; die afwesigheid van hierdie inligting word as 'n fout beskou.
412 Voorvoorwaarde het misluk . 'n Voorvoorwaarde in die versoek word nie nagekom nie, wat verhoed dat dit uitgevoer word.
413 Vrag te groot . Die grootte van die versoekdata oorskry die bedienerlimiete.
414 URI te lank . URI-lengte in die versoek oorskry aanvaarbare perke.
415 Nie-ondersteunde mediatipe . Die bediener kan nie die datatipe wat in die versoek verskaf is, verwerk nie.
416 Reikwydte nie bevredigbaar nie . HTTP-fout waar die aangevraagde reeks nie ooreenstem met die huidige bedienerdata nie.
417 Verwagting misluk . Die verwagte voorwaarde in die "Verwag"-koptekst is nie nagekom nie.
418 Ek is 'n teepot . Hierdie kode is as 'n grap ingesluit en impliseer geen werklike aksie vir die gebruiker of bediener nie, en is nie 'n volwaardige fout nie. Dit dui aan dat die bediener 'n teepot is en nie koffie kan maak nie.
421 Verkeerd gerigte versoek . Die bediener verwerk nie die versoek nie as gevolg van 'n fout in die versoek of bedienerkonfigurasie.
422 Onverwerkbare Entiteit . Die bediener verstaan die versoek, maar verwerk dit nie as gevolg van datafoute nie.
423 Gesluit. Die hulpbron is geblokkeer en kan nie verwerk word nie.
424 Mislukte Afhanklikheid . Die versoek hang af van 'n ander onuitgevoerde versoek.
425 Te vroeg. Die bediener is nie gereed om die versoek te verwerk nie as gevolg van die vroeë aankoms daarvan.
426 Opgradering Vereis . Die bediener benodig die gebruik van 'n meer gevorderde protokol om die versoek te verwerk.
428 Voorvereiste Vereis . Die bediener vereis dat sekere voorwaardes in die versoek gespesifiseer word.
429 Te veel versoeke . Die kliënt het te veel versoeke in 'n kort tydjie gestuur, wat die bediener se limiete oorskry.
431 Versoekopskrifvelde te groot . Versoekopskrifte oorskry die maksimum toegelate grootte.
449 Probeer weer met. Dui aan dat die versoek nie deur die huidige bediener uitgevoer kan word nie, maar suksesvol deur 'n ander bediener verwerk kan word, en die kliënt moet die versoek met 'n nuwe URI weer probeer.
451 Nie beskikbaar om wettige redes nie . Die hulpbron is nie beskikbaar om wettige redes nie.
499 Kliënt het versoek gesluit . Die bediener het die versoek ontvang, maar die verbinding is deur die kliënt gesluit voordat die verwerking voltooi is.
HTTP 5xx-fout (bedienerfoute)
HTTP 5xx-foutkodes dui die bedienerprobleme aan. Hierdie kodes dui probleme aan wat aan die bedienerkant voorgekom het, wat maak dat die bediener nie die gebruiker se versoek op 'n regte manier kan verwerk nie. Kom ons kyk nader na hulle:
HTTP-fout 500 Interne bedienerfout . Die bediener teëkom onverwagte omstandighede wat verhoed dat die versoek voltooi word. Die "Server"-opskrif kan die bediener aandui waarop die fout voorgekom het.
501 Nie geïmplementeer nie . Die bediener ondersteun nie die funksionaliteit wat benodig word om die kliënt se versoek te verwerk nie. Die "Via"-koptekst kan die instaanbediener aandui waardeur die fout voorgekom het.
502 Slegte poort . Hierdie kode beteken dat die bediener wat as instaanbediener optree, 'n verkeerde antwoord van 'n ander bediener ontvang het.
HTTP- fout 503-diens nie beskikbaar nie . Die bediener kan tydelik nie versoeke verwerk nie.
504 Gateway Time-out . Die bediener, wat as proxy optree, het nie 'n tydige reaksie van 'n ander bediener ontvang nie.
505 HTTP-weergawe nie ondersteun nie . Die bediener ondersteun nie die HTTP-protokolweergawe wat in die versoek gespesifiseer is nie. As 'n rugsteunopsie kan die "Opgradeer"-koptekst ondersteunde protokolle aandui.
506 Variant Onderhandel Ook . Hierdie status word nie in HTTP/1.1 gebruik nie; as die bediener egter 'n interne konfigurasie bespeur wat tot dubbelsinnigheid in inhoudonderhandeling lei, kan dit hierdie reaksie gebruik.
507 Onvoldoende berging . Die bediener kan nie aan die versoek voldoen nie as gevolg van onvoldoende berging op die bediener.
508 Lus Bespeur . Die bediener het 'n lus bespeur tydens die verwerking van die versoek en weier om die versoek te voltooi om 'n oneindige lus te vermy.
509 Bandwydtelimiet oorskry . Die fout kom voor wanneer die bediener se bandwydte oorskry word as gevolg van 'n hoë volume versoeke of verkeer.
510 Nie verleng nie . Die kliënt moet addisionele uitbreidings oordra om die versoek voort te sit.
511 Netwerkverifikasie Vereis . Die kliënt moet homself verifieer om toegang tot die netwerk te verkry.
Hoe om die bladsystatuskode na te gaan
In hierdie afdeling sal ons drie hoof maniere oorweeg om die bladsystatuskode na te gaan: via die opdragreël, met behulp van 'n webblaaier en die gebruik van onafhanklike aanlyndienste. Elkeen van hierdie metodes het sy eie voordele en kan nuttig wees in verskillende situasies.
Kontroleer tans bedienerrespons via opdragreël
Die opdragreël bied 'n gerieflike manier om die bladsystatuskode na te gaan sonder om 'n webblaaier te gebruik. Vir hierdie metode moet u die opdragreël oopmaak en die opdrag gebruik:
curl -I http://page-address
Hierdie opdrag stuur 'n HEAD-versoek (slegs opskrifte-versoek) na die gespesifiseerde URL en vertoon inligting, insluitend die HTTP-statuskode:
Die voorbeeld hierbo toon 'n suksesvolle antwoordkode. In die geval van 'n antwoord wat 'n foutkode bevat, soos 404 Nie gevind HTTP-fout, sal die resultaat soortgelyk lyk:
Kontroleer die bedienerrespons via die blaaierkonsole
Die webblaaier-ontwikkelaarkonsole bied gereedskap om verskeie bewerkings uit te voer, insluitend die kontrolering van die bladsystatuskode. Om die HTTP-kode in die bedienerantwoord te sien, moet jy die ontwikkelaarkonsole oopmaak (Ctrl+Shift+K) of (Ctrl+shift+J), afhangende van die blaaier wat gebruik word. Kies dan die "netwerk"-afdeling en laai die verlangde bladsy:
Kontroleer die bedienerrespons met behulp van onafhanklike gereedskap
Daar is 'n groot aantal onafhanklike aanlyndienste wat gereedskap bied om die webwerfbladsy se statuskode na te gaan. Hierdie dienste laat jou gewoonlik toe om vinnig 'n oorsig van jou hulpbron se beskikbaarheid en prestasie te kry. Hulle werk almal volgens dieselfde beginsel. As voorbeeld sal ons die gewildste hulpbron oorweeg - httpstatus.io
Eerstens moet u die diens self oopmaak, dan die adres van die bladsy invoer wat u moet uitvind, en verifikasie versoek:
Die resultaat sal onderaan die bladsy vertoon word:
Gevolgtrekking
Ten slotte moet dit beklemtoon word dat om HTTP-foutkodes te verstaan en te kan lees 'n sleutelvaardigheid is vir almal wat betrokke is by webontwikkeling en bedieneronderhoud. Terwyl ons elke fout uitvind en die nutsmiddels verken om dit op te spoor, sien ons redes waarom dit so belangrik is om hierdie webdienste-aspekte effektief te bestuur.