Kennisbank Eenvoudige instructies om met de Profitserver-service te werken
Hoofd Kennisbank HTTP-foutcodes: volledige lijst met serverfouten

HTTP-foutcodes: volledige lijst met serverfouten


In de wereld van webontwikkeling spelen HTTP-foutcodes een cruciale rol bij het beïnvloeden van de gebruikerservaring en reputatie van een website. In dit artikel bekijken we een complete lijst met serverfoutcodes, analyseren we hun betekenissen en leren we hoe we serverresponscodes effectief kunnen interpreteren om problemen op te lossen en de prestaties van webapps te optimaliseren.

Wat is een HTTP-responscode?

HTTP-responscode is de taal van webservers die browserverzoeken vertaalt naar begrijpelijke instructies. Het is als een dichter die virtuele vragen beantwoordt en ze betekenis en richting geeft. Responscodes zijn niet altijd HTTP-foutcodes. Bijvoorbeeld, "200 OK" betekent dat alles OK is, maar HTTP-fout "404 Not Found" betekent dat de pagina verloren is gegaan in de virtuele ruimte. Elke code is een unieke uitdrukking van de serverstatus, waarvan de decodering ons in staat stelt te begrijpen wat er aan de andere kant van de virtuele wereld gebeurt.

1xx-codes (informatie)

1xx-statuscodes in het HTTP-protocol zijn een soort eerste schakel in de dialoog tussen de server en de client. In plaats van een volledig antwoord op een verzoek te geven, geven ze informatie over de huidige status, waardoor gegevensuitwisseling efficiënter wordt. Laten we ze eens nader bekijken:

100 DoorgaanHTTP-responscode waarin de server groen licht geeft aan de gebruiker, zodat deze veilig een groot verzoek kan blijven verzenden.

101 Schakelprotocollen. De server vertelt de client dat het de spelregels verandert, bijvoorbeeld door van HTTP naar het veiligere HTTPS te gaan. In dit geval wordt de header 'Upgrade' gebruikt voor de protocolwijziging.

102 VerwerkingDeze code is als een bericht dat de server het verzoek heeft geaccepteerd, maar nog bezig is met een complexe bewerking.

103 vroege tipsHierbij stuurt de server verschillende indicatieve headers naar de client vóór het hoofdantwoord, met een waarschuwing over iets dat in de nabije toekomst relevant kan zijn.

2xx-code (succesvol)

HTTP-foutcodes in de groep 2xx geven een succesvol verzoek van de server aan. Ze fungeren in feite als een "groen licht" in het bereik van webcommunicatie, en bevestigen dat alles volgens plan verloopt en succesvol is voltooid.

200 OK. Deze status wordt gebruikt wanneer de server een verzoek verwerkt via de GET-methode zonder problemen en de gevraagde gegevens retourneert als antwoord. De header "Content-Type" rapporteert het inhoudstype in het antwoord. Het informeert de client alleen dat het verzoek succesvol was.

201 gemaaktHier kondigt de server de creatie van een nieuwe resource aan.

202 GeaccepteerdDe server laat de gebruiker weten dat het verzoek is geaccepteerd, maar het duurt even voordat er wordt gereageerd.

203 Niet-gezaghebbende informatieDeze code biedt de klant gegevens die mogelijk niet officieel zijn, maar die wel ter vergelijking kunnen worden gebruikt.

204 Geen inhoudDe server heeft het verzoek verwerkt, maar retourneert geen aanvullende inhoud.

205 Inhoud resettenHier wordt de client geïnstrueerd om de huidige weergave of gegevens opnieuw in te stellen na het verzenden.

206 Gedeeltelijke inhoud. Dit geval geeft aan dat het antwoord slechts een deel van de gevraagde inhoud bevat. De header "Content-Range" geeft het gedeeltelijke inhoudsbereik aan.

207 Meerdere statussen. De server heeft een verzoek voor meerdere bewerkingen van de client succesvol uitgevoerd en het antwoord bevat informatie over de status van elke bewerking.

226 IM GebruiktDeze code geeft aan dat de server de Incremental Metadata (IM)-methode heeft gebruikt en heeft gereageerd door alleen de gewijzigde resourceonderdelen aan de client door te geven.

3xx-codes (omleidingen)

3xx-codes in het HTTP-protocol zijn als pointers die de gebruiker naar een nieuwe resourcelocatie leiden. Ze informeren de client dat vervolgstappen moeten worden genomen om de gevraagde content te verkrijgen of om te worden omgeleid naar een andere resource. Laten we dieper ingaan op de details van elk van hen:

300 meerdere keuzes. De client ontvangt een signaal dat er verschillende mogelijke locaties zijn voor de resource en krijgt een keuze als antwoord. In de huidige omstandigheden kan de header "Locatie" alternatieve opties voor de resource aangeven.

301 is permanent verhuist. De server meldt aan de gebruiker dat de bron permanent naar een andere locatie is verplaatst.

302 Gevonden. Deze HTTP-code is vergelijkbaar met een tijdelijke omleiding. De server informeert de consument dat de resource tijdelijk beschikbaar is op een andere URL. De header "Location" verwijst naar de nieuwe URL voor de tijdelijke omleiding.

303 Zie OverigeDe client krijgt te horen dat de resource beschikbaar is op een andere URL en moet een GET-verzoek doen naar dit nieuwe adres.

304 niet gewijzigd. Deze status vertelt de client dat de resource ongewijzigd is gebleven sinds de laatste aanvraag en niet opnieuw hoeft te worden gedownload. Bij het doen van een aanvraag wordt de header "If-Modified-Since" gebruikt om te controleren of de resource is gewijzigd.

305 Proxy gebruiken. Als antwoord hierop meldt de server dat de opgegeven proxy moet worden gebruikt om toegang te krijgen tot de gevraagde bron.

306 (gereserveerd) — De code is gereserveerd, maar wordt feitelijk niet gebruikt.

307 Tijdelijke omleidingDeze code is vergelijkbaar met 302 Found, maar vereist dat de client in de aanvraagmethode blijft die in de oorspronkelijke aanvraag is gebruikt.

308 Permanente omleidingGeeft aan dat de resource permanent is verplaatst naar een nieuwe URI en dat de client de nieuwe URI moet gebruiken voor alle toekomstige aanvragen.

4xx HTTP-fout (clientfouten)

HTTP 4xx-foutcodes geven clientfouten aan. Dit betekent dat het probleem aan de gebruikerskant ligt, zoals de webbrowser of app.

400 slecht verzoekDe server kan het verzoek niet verwerken vanwege syntaxisfouten, ongeldige gegevens of andere fouten aan de clientzijde.

401 Ongeautoriseerd. De server kan het verzoek niet verwerken vanwege syntaxisfouten, ongeldige gegevens of andere fouten aan de clientzijde.

402 Betaling vereist. De code is op dit moment niet actief en is gereserveerd voor toekomstig gebruik. Het kan erop duiden dat er betaald moet worden voordat de bron in de toekomst wordt geopend.

HTTP-fout 403 Verboden. De klant beschikt niet over voldoende rechten om toegang te krijgen tot de gevraagde bron.

404 Niet Gevonden. De gevraagde resource bestaat niet op de server. Dit is een van de meest voorkomende gebruikersfouten.

405-methode niet toegestaan. De server ondersteunt de opgegeven aanvraagmethode niet tijdens deze resource. De header 'Allow' geeft de toegestane methoden voor de resource aan. Met deze code,

406 Niet acceptabel. De server kan geen gegevens leveren in een formaat dat door de client geaccepteerd kan worden.

407 Proxyverificatie vereistVoor toegang tot de gevraagde bron is authenticatie op de proxyserver vereist.

408 Time-out voor verzoek. De server wachtte op een verzoek van de client, maar timede uit. De header "Retry-After" kan de tijd aangeven waarna het verzoek opnieuw kan worden geprobeerd.

409 Conflicten. Het verzoek kan niet worden voltooid vanwege een conflict met de huidige resourcestatus.

410 GoneDe gevraagde bron bestond al, maar is nu verwijderd en er wordt niet verwacht dat deze wordt hersteld.

411 Vereiste lengteDe server vraagt ​​om de lengte van de inhoud in het verzoek te specificeren. Het ontbreken van deze informatie wordt als een fout beschouwd.

412 Voorwaarde misluktEr is niet voldaan aan een voorwaarde in het verzoek, waardoor het verzoek niet kan worden uitgevoerd.

413 Lading te grootDe grootte van de aanvraaggegevens overschrijdt de serverlimieten.

414 URI te langDe URI-lengte in het verzoek overschrijdt de acceptabele limieten.

415 Niet-ondersteund mediatypeDe server kan het in de aanvraag opgegeven gegevenstype niet verwerken.

416 Bereik niet bevredigendHTTP-fout waarbij het opgevraagde bereik niet overeenkomt met de huidige servergegevens.

417 Verwachting is niet uitgekomen. De verwachte voorwaarde in de header 'Expect' is niet vervuld.

418 Ik ben een theepot. Deze code is als grap toegevoegd en impliceert geen echte actie voor de gebruiker of server, en is geen volwaardige fout. Het geeft aan dat de server een theepot is en niet in staat is om koffie te zetten.

421 Verkeerd geadresseerd verzoekDe server verwerkt het verzoek niet vanwege een fout in het verzoek of de serverconfiguratie.

422 Onverwerkbare entiteitDe server begrijpt het verzoek, maar verwerkt het niet vanwege gegevensfouten.

423 Vergrendeld. De bron is geblokkeerd en kan niet worden verwerkt.

424 Mislukte afhankelijkheid. Het verzoek is afhankelijk van een ander niet-uitgevoerd verzoek.

425 Te vroeg. De server is nog niet gereed om het verzoek te verwerken omdat het te vroeg is.

426 Upgrade vereistDe server vereist het gebruik van een geavanceerder protocol om het verzoek te verwerken.

428 Voorwaarde vereistDe server vereist dat bepaalde voorwaarden in het verzoek worden gespecificeerd.

429 Te veel verzoekenDe client heeft in korte tijd te veel verzoeken verzonden, waardoor de limieten van de server zijn overschreden.

431 Aanvraagheadervelden te groot. De aanvraagheaders overschrijden de maximaal toegestane grootte.

449 Opnieuw proberen met. Geeft aan dat de aanvraag niet door de huidige server kan worden uitgevoerd, maar wel succesvol kan worden verwerkt door een andere server. In dat geval moet de client de aanvraag opnieuw indienen met een nieuwe URI.

451 Niet beschikbaar om juridische redenenDe bron is om juridische redenen niet beschikbaar.

499 Client gesloten verzoekDe server heeft het verzoek ontvangen, maar de verbinding is door de client verbroken voordat de verwerking was voltooid.

HTTP 5xx-fout (serverfouten)

HTTP 5xx-foutcodes geven serverproblemen aan. Deze codes geven problemen aan die zich aan de serverkant hebben voorgedaan, waardoor de server het verzoek van de gebruiker niet op de juiste manier kan verwerken. Laten we ze eens nader bekijken:

HTTP-fout 500 Interne serverfout. De server komt onverwachte omstandigheden tegen waardoor de aanvraag niet kan worden voltooid. De header 'Server' kan aangeven op welke server de fout is opgetreden.

501 niet geïmplementeerd. De server ondersteunt niet de functionaliteit die nodig is om het verzoek van de client te verwerken. De header "Via" kan de proxyserver aangeven via welke de fout is opgetreden.

502 Bad GatewayDeze code betekent dat de server die als proxy fungeert een onjuist antwoord van een andere server heeft ontvangen.

HTTP Fout 503 Service niet beschikbaarDe server kan tijdelijk geen verzoeken verwerken.

504 Gateway Time-outDe server, die als proxy fungeert, heeft geen tijdig antwoord ontvangen van een andere server.

505 HTTP-versie niet ondersteund. De server ondersteunt de HTTP-protocolversie die in de aanvraag is opgegeven niet. Als back-upoptie kan de header 'Upgrade' ondersteunde protocollen aangeven.

506 Variant Onderhandelt OokDeze status wordt niet gebruikt in HTTP/1.1. Als de server echter een interne configuratie detecteert die resulteert in dubbelzinnigheid bij de inhoudsonderhandeling, kan deze respons worden gebruikt.

507 Onvoldoende opslagDe server kan het verzoek niet verwerken omdat er onvoldoende opslagruimte op de server is.

508 Lus gedetecteerdDe server heeft een lus gedetecteerd tijdens het verwerken van het verzoek en weigert het verzoek te voltooien om een ​​oneindige lus te voorkomen.

509 Bandbreedtelimiet overschredenDe fout treedt op wanneer de bandbreedte van de server wordt overschreden vanwege een groot aantal verzoeken of verkeer.

510 Niet verlengdDe klant moet extra extensies overdragen om de aanvraag voort te zetten.

511 Netwerkverificatie vereistDe client moet zichzelf authenticeren om toegang te krijgen tot het netwerk.

Hoe de paginastatuscode te controleren

In deze sectie zullen we drie hoofdmanieren bespreken om de paginastatuscode te controleren: via de opdrachtregel, met behulp van een webbrowser en met behulp van onafhankelijke onlineservices. Elk van deze methoden heeft zijn eigen voordelen en kan in verschillende situaties nuttig zijn.

Serverrespons controleren via opdrachtregel

De opdrachtregel biedt een handige manier om de paginastatuscode te controleren zonder dat u een webbrowser hoeft te gebruiken. Voor deze methode moet u de opdrachtregel openen en de opdracht gebruiken:

curl -I http://page-address

Met deze opdracht wordt een HEAD-aanvraag (headers only request) naar de opgegeven URL verzonden en wordt informatie weergegeven, waaronder de HTTP-statuscode:

Controleren van de HTTP-responscode van de Curl-server

Het bovenstaande voorbeeld toont een succesvolle responscode. In het geval van een respons die een foutcode bevat, zoals 404 Not Found HTTP error, zal het resultaat er ongeveer zo uitzien:

HTTP-fout 404 Niet gevonden foutcode

Het serverantwoord controleren via de browserconsole

De ontwikkelaarsconsole van de webbrowser biedt hulpmiddelen voor het uitvoeren van verschillende bewerkingen, waaronder het controleren van de paginastatuscode. Om de HTTP-code in de serverrespons te zien, moet u de ontwikkelaarsconsole openen (Ctrl+Shift+K) of (Ctrl+shift+J), afhankelijk van de gebruikte browser. Selecteer vervolgens de sectie 'netwerk' en laad de gewenste pagina:

Diagnose van de HTTP-responscode van de browserserver

Het serverantwoord controleren met behulp van onafhankelijke hulpmiddelen

Er zijn een groot aantal onafhankelijke online services die tools bieden om de statuscode van de webpagina te controleren. Deze services stellen u doorgaans in staat om snel een overzicht te krijgen van de beschikbaarheid en prestaties van uw resource. Ze werken allemaal volgens hetzelfde principe. Als voorbeeld zullen we de populairste resource bekijken - httpstatus.io

Allereerst moet u de service zelf openen en vervolgens het adres van de pagina invoeren waarvan u het antwoord wilt weten, en om verificatie vragen:

HTTP-serverresponscode voor onafhankelijke services

Het resultaat wordt onderaan de pagina weergegeven:

Succesvolle HTTP-serverresponscode

Conclusie

Concluderend moet worden benadrukt dat het begrijpen en kunnen lezen van HTTP-foutcodes een belangrijke vaardigheid is voor iedereen die betrokken is bij webontwikkeling en serveronderhoud. Terwijl we elke fout achterhalen en de tools verkennen om ze te detecteren, zien we redenen waarom het zo belangrijk is om deze aspecten van webservices effectief te beheren.

❮ Vorig artikel Hoe controleer ik de mailserver?
Volgend artikel ❯ Hoe voeg ik een extra IP-adres toe aan een Windows-server?

Vraag ons over VPS

Wij staan ​​altijd klaar om uw vragen te beantwoorden, op elk moment van de dag of nacht.