HTTP-statuscodes

Wanneer er een pagina van uw site wordt aangevraagd bij uw server (wanneer een gebruiker bijvoorbeeld uw pagina opent in een browser of wanneer een zoekmachine de pagina crawlt), geeft uw server een HTTP-statuscode weer als reactie op het verzoek.

Deze statuscode geeft informatie over de status van het verzoek. De statuscode voorziet uw browser of de zoekmachine van informatie over uw site en de gevraagde pagina.

Enkele veelvoorkomende statuscodes zijn:

  • 200: de server geeft de pagina weer
  • 404: de gevraagde pagina bestaat niet
  • 503: de server is tijdelijk niet beschikbaar

Hieronder volgt een volledige lijst van alle HTTP-statuscodes. Klik op de link voor meer informatie. Of ga voor meer informatie naar de pagina van W3C over HTTP-statuscodes.

Bij de codes is ook de Engelse tekst weergegeven zodat hierop gezocht kan worden op deze website. De tekst staat er als (E: xxxx).

1xx (Voorlopige reactie)

Deze statuscodes geven een voorlopige reactie aan. De aanvrager moet actie ondernemen om verder te kunnen gaan.

Code Beschrijving
100 (Doorgaan)
(E: Continue)
De aanvrager kan doorgaan met het verzoek. De server geeft deze code weer om aan te geven dat het eerste gedeelte van een verzoek is ontvangen, en dat de server wacht op de rest.
101 (Er wordt tussen protocollen gewisseld)
(E: Switching Protocols)
De aanvrager heeft de server gevraagd van protocol te wisselen en de server geeft aan dit te gaan doen.
 102 (Wordt verwerkt)
(E: Processing)
(WebDAV) (RFC 2518) Aangezien een WebDAV verzoek vele sub-verzoeken met bestandsbewerkingen kan bevatten, kan het lang duren voordat deze allemaal zijn verwerkt. Deze code geeft aan dat de server het verzoek heeft ontvangen en dit aan het verwerken is, maar dat er nog geen antwoord is. Dit zorgt ervoor dat er bij de aanvrager geen time-out ontstaat waardoor de indruk bestaat dat de verbinding verloren is gegaan.

2xx (Geslaagd)

Deze statuscodes geven aan dat de server het verzoek heeft verwerkt.

Code Beschrijving
200 (Geslaagd)
(E: OK)
De server heeft het verzoek kunnen verwerken. Over het algemeen betekent dit dat de server de gevraagde pagina heeft kunnen vinden.
201 (Gemaakt)
(E: Created)
Het verzoek is verwerkt en de server heeft een nieuwe bron gemaakt.
202 (Geaccepteerd)
(E: Accepted)
De server heeft het verzoek geaccepteerd, maar heeft dit nog niet kunnen verwerken.
203 (Niet-gemachtigde informatie)
(E: Non-Authoritative Information)
(vanaf HTTP/1.1)
De server heeft het verzoek verwerkt, maar geeft informatie weer die mogelijk uit een andere bron komt.
204 (Geen inhoud)
(E: No Content)
De server heeft het verzoek verwerkt, maar kan geen inhoud weergeven.
205 (Inhoud herstellen)
(E: Reset Content)
De server heeft het verzoek verwerkt, maar kan geen inhoud weergeven. In tegenstelling tot bij een 204-reactie moet de aanvrager bij deze reactie de documentweergave opnieuw instellen (bijvoorbeeld een formulier leegmaken voor nieuwe invoer).
206 (Gedeeltelijke inhoud)
(E: Partial Content)
De server heeft een gedeeltelijk GET-verzoek kunnen verwerken.
207 (Multi-status) (WebDAV) (RFC 4918) De inhoud van het opvolgende bericht is een XML bericht en kan een aantal afzonderlijke statuscodes bevatten, afhankelijk van het aantal aanwezige sub-verzoeken.

3xx (Omgeleid)

Er moeten aanvullende handelingen worden uitgevoerd om het verzoek te voltooien. Deze statuscodes worden vaak gebruikt voor omleidingen. In het algemeen wordt aangeraden minder dan vijf omleidingen te gebruiken voor elk verzoek.

Code Beschrijving
300 (Meerdere keuzes)
(E: Multiple Choices)
De server kan verschillende acties uitvoeren naar aanleiding van het verzoek. Deze server kan een actie kiezen op basis van de aanvrager (user-agent) of de server kan een lijst weergeven zodat de aanvrager een actie kan kiezen.
301 (Permanent verplaatst)
(E: Moved Permanently)
De opgevraagde pagina is permanent naar een andere locatie verplaatst. Wanneer de server deze reactie retourneert (in reactie op een GET- of HEAD-verzoek), wordt de aanvrager automatisch doorgestuurd naar de nieuwe locatie. U moet deze code gebruiken om zoekmachines te laten weten dat een pagina of site permanent naar een andere locatie is verplaatst.

302 (Gevonden)
(E: Found)

Vroegere betekenis:
(Tijdelijk verplaatst)
(E: Moved Temporarily)

Dit is de populairste omleidingscode, maar tevens een voorbeeld van feitelijk gebruik in tegenspraak met de standaard. De HTTP/1.0 specificatie (RFC 1945) vereiste de aanvrager een tijdelijke omleiding uit te voeren (vandaar de oude betekenins: „Tijdelijk verplaatst”), maar de populaire browsers implementeerden een 302 met de functionaliteit van een 303 („Andere locatie weergeven”). Daarom zijn in HTTP/1.1 de statuscodes 303 en 307 toegevoegd om het verschil aan te geven. De meeste webapplicaties en -frameworks gebruiken nog steeds de:

Vroegere betekenis:
De server geeft op dit moment een pagina weer van een andere locatie in reactie op het verzoek. De aanvrager moet echter nog steeds de oorspronkelijke locatie gebruiken voor toekomstige verzoeken. Deze code lijkt op de status ‘301’, omdat de gebruiker bij een GET- of HEAD-verzoek automatisch wordt omgeleid naar een andere locatie. U hoeft hierbij een zoekmachine niet te laten weten dat een pagina of site is verplaatst, omdat de zoekmachine de oorspronkelijke locatie blijft crawlen en indexeren.

303 (Andere locatie weergeven)
(E: See other)
De server geeft deze code weer wanneer de aanvrager een apart GET-verzoek moet doen voor een andere locatie om een reactie te kunnen krijgen. Bij alle andere verzoeken dan HEAD-verzoeken wordt de aanvrager automatisch doorgestuurd naar de andere locatie.
304 (Niet gewijzigd)
(E: Not Modified)
De opgevraagde pagina is niet gewijzigd sinds het laatste verzoek. Wanneer de server deze reactie geeft, wordt de inhoud van de pagina niet weergegeven.
U moet uw server zodanig configureren dat deze reactie (de HTTP-header ‘If-Modified-Since’) wordt weergegeven wanneer een pagina niet is veranderd sinds het vorige verzoek. Op deze manier bespaart u bandbreedte en overhead, omdat uw server aan de browser of zoekmachine kan doorgeven dat de pagina niet is gewijzigd sinds deze voor het laatst is opgevraagd / gecrawld.
305 (Proxy gebruiken)
(E: Use Proxy)
De aanvrager kan alleen toegang krijgen tot de opgevraagde pagina via een proxy. Wanneer de server deze reactie geeft, wordt ook de proxy weergegeven die de aanvrager moet gebruiken.
306 (E: Switch Proxy) Deze wordt niet meer gebruikt.
307 (Tijdelijke omleiding)
(E: Temporary Redirect)
De server geeft op dit moment een pagina weer van een andere locatie in reactie op het verzoek. De aanvrager moet echter nog steeds de oorspronkelijke locatie gebruiken voor toekomstige verzoeken. Deze code lijkt op de status 301, omdat de gebruiker bij een GET- of HEAD-verzoek automatisch wordt omgeleid naar een andere locatie. U hoeft hierbij de zoekmachines niet te laten weten dat een pagina of site is verplaatst, omdat deze de oorspronkelijke locatie blijven crawlen en indexeren.

4xx (Fout in verzoek)

Deze statuscodes geven aan dat er waarschijnlijk een fout in het verzoek stond, waardoor de server dit niet kon verwerken.

Code Beschrijving
400 (Ongeldig verzoek)
(E: Bad Request)
De server heeft de syntaxis van het verzoek niet begrepen.
401 (Geen toegang)
(E: Unauthorized)
Het verzoek moet worden geverifieerd. De server kan deze reactie weergeven voor een pagina waarvoor aanmelding is vereist.
402 (Betaling vereist)
(E: Payment Required)
Gereserveerd voor toekomstig gebruik.
403 (Verboden)
(E: Forbidden)
De server weigert het verzoek. Het is mogelijk dat uw server of host de toegang blokkeert.
404 (Niet gevonden)
(E: Not found)
De server kan de opgevraagde pagina niet vinden. De server geeft deze code bijvoorbeeld vaak weer wanneer er een pagina wordt opgevraagd die niet bestaat op de server.
Als u geen robots.txt-bestand op uw site heeft is dit de correcte status. Als u echter wel een robots.txt-bestand heeft en u deze status ziet, heeft uw robots.txt-bestand een verkeerde naam of staat het op de verkeerde locatie. (Het moet op het hoofdniveau van het domein staan en ‘robots.txt’ heten.)
405 (Methode niet toegestaan)
(E: Method Not Allowed)
De in het verzoek genoemde methode is niet toegestaan.
406 (Niet acceptabel)
(E: Not Acceptable)
De opgevraagde pagina kan niet worden weergegeven met de opgegeven inhoudskenmerken.
407 (Verificatie op de proxyserver verplicht)
(E: Proxy Authentication Required)
Deze statuscode lijkt op ‘401’ (Geen toegang), maar geeft bovendien aan dat de aanvrager moet verifiëren met een proxy. Wanneer de server deze reactie geeft, wordt ook de proxy weergegeven die de aanvrager moet gebruiken.
408 (Time-out voor verzoek)
(E: Request Timeout)
Er is een time-out van de server opgetreden tijdens het wachten op het verzoek.
409 (Conflict) De server is een conflict tegengekomen bij het uitvoeren van het verzoek. De server moet informatie over het conflict in de reactie zetten. De server kan deze code weergeven in reactie op een PUT-verzoek waarbij een conflict optreedt met een eerder verzoek, samen met een lijst van de verschillen tussen beide verzoeken.
410 (Verdwenen)
(E: Gone)
De server geeft deze reactie wanneer de opgevraagde bron permanent is verwijderd. Deze code lijkt op de status ‘404’ (Niet gevonden), maar wordt soms in plaats van de status 404 gebruikt voor bronnen die niet meer bestaan. Als de bron permanent is verwijderd, moet u de code ‘301’ gebruiken om de nieuwe locatie van de bron op te geven.
411 (Lengte vereist)
(E: Length Required)
De server accepteert het verzoek niet zonder een geldige berichtkop voor de inhoudslengte.
412 (Voorwaarde mislukt)
(E: Precondition Failed)
De server voldoet niet aan een van de voorwaarden die de aanvrager in het verzoek heeft gesteld.
413 (Verzoek te groot)
(E: Request Entity Too Large)
De server kan het verzoek niet verwerken, omdat dit te groot is voor de server.
414 (Gevraagde URI is te lang)
(E: Request-URI Too Long)
De opgevraagde URI (meestal een URL) is te lang, zodat de server deze niet kan verwerken.
415 (Niet-ondersteund mediatype)
(E: Unsupported Media Type)
Het verzoek is gesteld in een indeling die de gevraagde pagina niet ondersteunt.
416 (Gevraagd bereik niet beschikbaar)
(E: Requested Range Not Satisfiable)
De server geeft deze status bijvoorbeeld vaak weer wanneer er een bereik is aangevraagd dat niet beschikbaar is voor de pagina.
417 (Verwachting mislukt)
(E: Expectation Failed)
De server kan niet voldoen aan de vereisten uit de berichtkop voor verwacht verzoek.
418 (E: I’m a teapot) Deze code is in 1998 ingevoerd als 1 april grap. Niet in gebruik.
422 (Onuitvoerbaar verzoek)
(E: Unprocessable Entity)
(WebDAV) (RFC 4918) Het verzoek is correct aangemaakt maar is niet uitvoerbaar omdat er fouten in de betekenis zitten.
423 (Afgesloten)
(E: Locked)
(WebDAV) (RFC 4918) De te benaderen bron is afgesloten.
424 (Fout in afhankelijke)
(E: Failed Dependency)
(WebDAV) (RFC 4918) Het verzoek is mislukt wegens een fout in een eerder verzoek (bijvoorbeeld een PROPPATCH).
425 (Ongeordende verzameling)
(E: Unordered Collection)
(RFC 3648) Gedefinieerd in voorstellen van „WebDAV Geavanced Collections Protocol”, maar niet aanwezig in „Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol”.
426 (Bijwerking verplicht)
(E: Upgrade Required)
(RFC 2817) De aanvrager moet een ander protocol gebruiken, zoals TLS/1.0.
449 (Probeer opnieuw met)
(E: Retry With)
Een uitbreiding van Microsoft. De aanvraag moet opnieuw worden uitgevoerd na de juiste actie.
450 (Geblokkeerd door Microsoft Ouderlijk toezicht)
(E: Blocked by Windows Parental Controls)
Een uitbreiding van Microsoft. Deze fout wordt gegeven als Microsoft Ouderlijk toezicht ingeschakeld is en deze de toegang tot een webpagina blokkeert.
499 (Aanvrager heeft een verzoek afgesloten)
(E: Client Closed Request)
Een uitbreiding van de Nginx HTTP server. Deze code is ingevoerd om vast te leggen dat de verbinding door de aanvrager is verbroken terwijl de HTTP server een verzoek verwerkt waardoor het niet mogelijk is een HTTP kop terug te zenden.

5xx (Serverfout)

Deze statuscodes geven aan dat er een interne serverfout heeft plaatsgevonden bij de verwerking van het verzoek. Deze fouten worden meestal veroorzaakt door de server, niet door het verzoek.

Code Beschrijving
500 (Interne serverfout)
(E: Internal Server Error)
De server is een fout tegengekomen en kan het verzoek niet uitvoeren.
501 (Niet geïmplementeerd)
(E: Not Implemented)
De server beschikt niet over de functionaliteit om aan het verzoek te voldoen. De server kan deze code bijvoorbeeld weergeven wanneer de verzoekmethode niet wordt herkend.
502 (Onjuiste gateway)
(E: Bad Gateway)
De server fungeerde als een gateway of proxy en heeft een ongeldige reactie ontvangen van de upstream-server.
503 (Service niet beschikbaar)
(E: Service Unavailable)
De server is tijdelijk niet beschikbaar (vanwege overbelasting of onderhoudswerkzaamheden). Meestal is dit een tijdelijke status.
504 (Time-out voor gateway)
(E: Gateway Timeout)
De server fungeerde als een gateway of proxy, en heeft niet op tijd een verzoek ontvangen van de upstream-server.
505 (De HTTP-versie wordt niet ondersteund)
(E: HTTP Version Not Supported)
De server biedt geen ondersteuning voor de HTTP-protocolversie die in het verzoek is gebruikt.
506 (Een variant wordt ook opgevraagd)
(E: Variant Also Negotiates)
(RFC 2295) Het opvragen van een variant van dit verzoek levert een eindeloze reeks van verzoeken op.
507 (Onvoldoende ruimte)
(E: Insufficient Storage)
(WebDAV) (RFC 4918)
509 (Bandbreedte limiet overschreden)
(E: Bandwidth Limit Exceeded)
(Apache bw/limited extension) Deze status code is niet gedefinieerd in een RFC, maar wordt door vele servers gebruikt.
510 (Niet uitgebreid genoeg)
(E: Not Extended)
(RFC 2774) Verdere aanvullingen op de aanvraag zijn nodig voor de server om deze te verwerken.