Vidensdatabase Enkle instruktioner til at arbejde med Profitserver-tjenesten

HTTP-fejlkoder: komplet liste over serverfejl


I en verden af ​​webudvikling spiller HTTP-fejlkoder en afgørende rolle i at påvirke brugeroplevelsen og omdømmet på et websted. I denne artikel vil vi overveje en komplet liste over serverfejlkoder, analysere deres betydning og lære, hvordan man effektivt fortolker serversvarkoder for at løse problemer og optimere webapps-ydeevnen.

Hvad er en HTTP-svarkode

HTTP-svarkode er sproget på webservere, der oversætter browseranmodninger til forståelige instruktioner. Det er som en digter, der besvarer virtuelle spørgsmål og giver dem mening og retning. Svarkoder er ikke altid HTTP-fejlkoder. For eksempel betyder "200 OK" at alt er OK, men HTTP-fejl "404 ikke fundet" betyder, når siden er tabt i det virtuelle rum. Hver kode er et unikt udtryk for servertilstanden, hvis afkodning giver os mulighed for at forstå, hvad der sker på den anden side af den virtuelle verden.

1xx koder (information)

1xx-statuskoder i HTTP-protokollen er en slags første led i dialogen mellem serveren og klienten. I stedet for at give et fuldstændigt svar på en anmodning, giver de oplysninger om den aktuelle status, hvilket gør dataudvekslingen mere effektiv. Lad os se nærmere på dem:

100 Fortsæt. HTTP-svarkode, hvor serveren giver grønt lys til brugeren, hvilket giver ham mulighed for sikkert at fortsætte med at sende en stor anmodning.

101 Skifteprotokoller. Serveren fortæller klienten, at den ændrer spillets regler, for eksempel ved at flytte fra HTTP til det mere sikre HTTPS. I dette tilfælde bruges "Opgradering"-headeren til protokolændringen.

102 Behandling. Denne kode er som en besked om, at serveren har accepteret anmodningen, men stadig er optaget af en kompleks operation.

103 Tidlige Hints. Her sender serveren flere vejledende headers til klienten før hovedsvaret, der advarer om noget, der kan være relevant i den nærmeste fremtid.

2xx kode (Vellykket)

HTTP-fejlkoder i gruppen 2xx indikerer en vellykket anmodning fra serveren. De fungerer i det væsentlige som et "grønt lys" i forbindelse med webkommunikation, hvilket bekræfter, at alt går efter planen og er blevet gennemført med succes.

200 OK. Denne status bruges, når serveren behandler en anmodning med GET-metoden uden problemer og returnerer de anmodede data som svar. "Content-Type"-headeren rapporterer indholdstypen i svaret. Det informerer blot kunden om, at anmodningen var vellykket.

201 Oprettet. Her annoncerer serveren oprettelsen af ​​en ny ressource.

202 Accepteret. Serveren lader brugeren vide, at anmodningen er blevet accepteret, men det vil tage tid at svare.

203 Ikke-autoritative oplysninger. Denne kode giver klienten data, der måske ikke er officielle, men som kan bruges til sammenligning.

204 Intet indhold. Serveren har behandlet anmodningen, men returnerer ikke yderligere indhold.

205 Nulstil indhold. Her bliver klienten instrueret i at nulstille den aktuelle visning eller data efter afsendelse.

206 Delvis Indhold. Denne sag angiver, at svaret kun indeholder en del af det ønskede indhold. "Content-Range"-overskriften angiver det delvise indholdsområde.

207 Multi-Status. Serveren har gennemført en anmodning om flere operationer fra klienten, og svaret indeholder oplysninger om status for hver af operationerne.

226 IM brugt. Denne kode angiver, at serveren brugte metoden Incremental Metadata (IM) og reagerede ved kun at videregive de modificerede ressourcedele til klienten.

3xx-koder (omdirigeringer)

3xx-koder i HTTP-protokollen er som pointere, der guider brugeren til en ny ressourceplacering. De informerer klienten om, at der skal tages opfølgende skridt for at få det ønskede indhold eller for at blive omdirigeret til en anden ressource. Lad os fordybe os i detaljerne om hver af dem:

300 flere valg. Klienten modtager et signal om, at der er flere mulige placeringer for ressourcen og får et valg som svar. Under de nuværende omstændigheder kan "Placering"-overskriften angive alternative muligheder for ressourcen.

301 Flyttet permanent. Serveren rapporterer tilbage til brugeren, at ressourcen er blevet permanent flyttet til en anden placering.

302 fundet. Denne HTTP-kode ligner en midlertidig omdirigering. Serveren informerer forbrugeren om, at ressourcen midlertidigt er tilgængelig på en anden URL. "Placering"-headeren peger på den nye URL for den midlertidige omdirigering.

303 Se Andet. Klienten får at vide, at ressourcen er tilgængelig på en anden URL og skal lave en GET-anmodning til denne nye adresse.

304 ikke ændret. Denne status fortæller klienten, at ressourcen er forblevet uændret siden sidste anmodning og ikke behøver at blive downloadet igen. Når du laver en anmodning, bruges "If-Modified-Since"-headeren til at kontrollere, om ressourcen er blevet ændret.

305 Brug proxy. Som et svar rapporterer serveren, at den skal bruge den angivne proxy til at få adgang til den anmodede ressource.

306 (reserveret) — Koden er reserveret, men den bliver faktisk ikke brugt.

307 Midlertidig omdirigering. Denne kode ligner 302 Found, men kræver, at klienten forbliver i den anmodningsmetode, der blev brugt i den oprindelige anmodning.

308 Permanent omdirigering. Angiver, at ressourcen har foretaget en permanent flytning til en ny URI, og klienten skal bruge den nye URI til alle fremtidige anmodninger.

4xx HTTP-fejl (klientfejl)

HTTP 4xx fejlkoder angiver klientfejl. Det betyder, at problemet er på brugersiden, såsom webbrowseren eller appen.

400 dårlig forespørgsel. Serveren kan ikke behandle anmodningen på grund af syntaksfejl, ugyldige data eller andre fejl på klientsiden.

401 Uautoriseret. Serveren kan ikke behandle anmodningen på grund af syntaksfejl, ugyldige data eller andre fejl på klientsiden.

402 Betaling påkrævet. Koden er ikke aktiv i øjeblikket og er reserveret til fremtidig brug. Det kan indikere behovet for at betale, før du får adgang til ressourcen i fremtiden.

HTTP-fejl 403 forbudt. Klienten har ikke tilstrækkelige rettigheder til at få adgang til den ønskede ressource.

404 Ikke fundet. Den anmodede ressource findes ikke på serveren. Dette er en af ​​de mest almindelige brugerfejl.

405-metode er ikke tilladt. Serveren understøtter ikke den angivne anmodningsmetode under denne ressource. "Tillad"-headeren angiver de tilladte metoder for ressourcen. Med denne kode,

406 Ikke acceptabelt. Serveren kan ikke levere data i et format, der kan accepteres af klienten.

407 Proxy-godkendelse påkrævet. Godkendelse på proxyserver er påkrævet for at få adgang til den anmodede ressource.

408 Timeout for anmodning. Serveren ventede på at modtage en anmodning fra klienten, men fik timeout. "Retry-After"-overskriften kan angive det tidspunkt, hvorefter anmodningen kan prøves igen.

409 Konflikt. Anmodningen kan ikke gennemføres på grund af en konflikt med den aktuelle ressourcetilstand.

410 Gone. Den anmodede ressource eksisterede tidligere, men er nu blevet slettet, og dens gendannelse forventes ikke.

411 Længde påkrævet. Serveren kræver at angive indholdslængden i anmodningen; fraværet af disse oplysninger betragtes som en fejl.

412 Forudsætning mislykkedes. En forudsætning i anmodningen er ikke opfyldt, som forhindrer den i at udføre.

413 Nyttelast for stor. Størrelsen af ​​anmodningsdataene overstiger servergrænserne.

414 URI for lang. URI-længden i anmodningen overskrider acceptable grænser.

415 Medietype, der ikke understøttes. Serveren kan ikke behandle den datatype, der er angivet i anmodningen.

416 Rækkevidde ikke tilfredsstillende. HTTP-fejl, hvor det anmodede område ikke matcher de aktuelle serverdata.

417 Forventning mislykkedes. Den forventede betingelse i "Forvent"-headeren blev ikke opfyldt.

418 Jeg er en tekande. Denne kode er inkluderet som en joke og indebærer ikke nogen reel handling for brugeren eller serveren, og er ikke en fuldgyldig fejl. Det angiver, at serveren er en tekande og ikke er i stand til at lave kaffe.

421 Forkert Forespørgsel. Serveren behandler ikke anmodningen på grund af en fejl i anmodningen eller serverkonfigurationen.

422 Entitet, der ikke kan behandles. Serveren forstår anmodningen, men behandler den ikke på grund af datafejl.

423 Låst. Ressourcen er blokeret og kan ikke behandles.

424 Mislykket afhængighed. Anmodningen afhænger af en anden ikke-udført anmodning.

425 for tidligt. Serveren er ikke klar til at behandle anmodningen på grund af dens tidlige ankomst.

426 Opgradering påkrævet. Serveren kræver brug af en mere avanceret protokol for at behandle anmodningen.

428 Forudsætning påkrævet. Serveren kræver, at visse forudsætninger angives i anmodningen.

429 For mange anmodninger. Klienten sendte for mange anmodninger på kort tid, hvilket overskred serverens grænser.

431 Anmodningshovedfelter er for store. Anmodningsoverskrifter overskrider den maksimalt tilladte størrelse.

449 Prøv igen med. Angiver, at anmodningen ikke kan køres af den aktuelle server, men kan behandles med succes af en anden server, og klienten bør prøve anmodningen igen med en ny URI.

451 Ikke tilgængelig af juridiske årsager. Ressourcen er utilgængelig af juridiske årsager.

499 Klient lukket anmodning. Serveren modtog anmodningen, men forbindelsen blev lukket af klienten, før behandlingen var afsluttet.

HTTP 5xx fejl (serverfejl)

HTTP 5xx fejlkoder angiver serverproblemerne. Disse koder indikerer problemer, der er opstået på serversiden, hvilket gør serveren ude af stand til at behandle brugerens anmodning på den rigtige måde. Lad os se nærmere på dem:

HTTP-fejl 500 Intern serverfejl. Serveren støder på uventede omstændigheder, der forhindrer den i at fuldføre anmodningen. "Server"-headeren kan angive den server, hvor fejlen opstod.

501 Ikke implementeret. Serveren understøtter ikke den funktionalitet, der kræves for at behandle klientens anmodning. "Via"-headeren kan angive den proxyserver, hvorigennem fejlen opstod.

502 Bad Gateway. Denne kode betyder, at den server, der fungerer som proxy, modtog et forkert svar fra en anden server.

HTTP Fejl 503 Tjenesten er ikke tilgængelig. Serveren er midlertidigt ude af stand til at behandle anmodninger.

504 Gateway timeout. Serveren, der fungerer som proxy, modtog ikke et rettidigt svar fra en anden server.

505 HTTP-version understøttes ikke. Serveren understøtter ikke den HTTP-protokolversion, der er angivet i anmodningen. Som en sikkerhedskopi kan "Opgrader"-headeren angive understøttede protokoller.

506 Variant forhandler også. Denne status bruges ikke i HTTP/1.1; men hvis serveren opdager en intern konfiguration, der resulterer i indholdsforhandlings-fletydighed, kan den bruge dette svar.

507 Utilstrækkelig opbevaring. Serveren kan ikke opfylde anmodningen på grund af utilstrækkelig lagerplads på serveren.

508 sløjfe fundet. Serveren har registreret en løkke under behandling af anmodningen og nægter at fuldføre anmodningen for at undgå en uendelig løkke.

509 Båndbreddegrænse overskredet. Fejlen opstår, når serverens båndbredde overskrides på grund af høj mængde forespørgsler eller trafik.

510 Ikke forlænget. Klienten skal overføre yderligere forlængelser for at fortsætte anmodningen.

511 Netværksgodkendelse påkrævet. Klienten skal autentificere sig selv for at få adgang til netværket.

Sådan tjekker du sidens statuskode

I dette afsnit vil vi overveje tre hovedmåder til at kontrollere sidens statuskode: via kommandolinjen, ved hjælp af en webbrowser og brug af uafhængige onlinetjenester. Hver af disse metoder har sine egne fordele og kan være nyttige i forskellige situationer.

Tjek serversvar via kommandolinje

Kommandolinjen giver en bekvem måde at kontrollere sidens statuskode uden at skulle bruge en webbrowser. For denne metode skal du åbne kommandolinjen og bruge kommandoen:

curl -I http://page-address

Denne kommando sender en HEAD-anmodning (kun headers-anmodning) til den angivne URL og viser information inklusive HTTP-statuskoden:

Kontrollerer Curl-serverens HTTP-svarkode

Eksemplet ovenfor viser en vellykket svarkode. I tilfælde af et svar, der indeholder en fejlkode, såsom 404 Ikke fundet HTTP-fejl, vil resultatet se lignende ud:

HTTP-fejl 404 ikke fundet fejlkode

Kontrollerer serversvaret via browserkonsollen

Webbrowserens udviklerkonsol giver værktøjer til at udføre forskellige operationer, herunder kontrol af sidens statuskode. For at se HTTP-koden i serversvaret skal du åbne udviklerkonsollen (Ctrl+Shift+K) eller (Ctrl+Shift+J) afhængigt af den anvendte browser. Vælg derefter afsnittet "netværk" og indlæs den ønskede side:

Diagnosticering af HTTP-svarkoden for browserserveren

Kontrol af serversvaret ved hjælp af uafhængige værktøjer

Der er et stort antal uafhængige onlinetjenester, der giver værktøjer til at kontrollere hjemmesidens statuskode. Disse tjenester giver dig normalt mulighed for hurtigt at få et overblik over din ressources tilgængelighed og ydeevne. De arbejder alle efter samme princip. Som et eksempel vil vi overveje den mest populære ressource - httpstatus.io

Først og fremmest skal du åbne selve tjenesten, derefter indtaste adressen på den side, som du har brug for for at finde ud af, og anmode om bekræftelse:

HTTP-serversvarkode til uafhængige tjenester

Resultatet vil blive vist nederst på siden:

Vellykket HTTP-serversvarkode

Konklusion

Afslutningsvis skal det understreges, at forståelse og at kunne læse HTTP-fejlkoder er en nøglefærdighed for alle involveret i webudvikling og servervedligeholdelse. Efterhånden som vi finder ud af hver fejl og udforsker værktøjerne til at opdage dem, ser vi grunde til, at det er så vigtigt at administrere disse webserviceaspekter effektivt.

⮜ Forrige artikel Sådan tilføjer du yderligere IP-adresse til Windows-serveren
Næste artikel ⮞ Sådan tjekker du mailserveren

Spørg os om VPS

Vi er altid klar til at besvare dine spørgsmål når som helst på dagen eller natten.