Code | Nachricht | Bedeutung |
---|---|---|
400 | Bad Request | Die Anfrage-Nachricht war fehlerhaft aufgebaut. |
401 | Unauthorized | Die Anfrage kann nicht ohne gültige Authentifizierung durchgeführt werden. Wie die Authentifizierung durchgeführt werden soll, wird im „WWW-Authenticate“-Header-Feld der Antwort übermittelt. |
402 | Payment Required | Bezahlung benötigt. Dieser Status ist für zukünftige HTTP-Protokolle reserviert. |
403 | Forbidden | Die Anfrage wurde mangels Berechtigung des Clients nicht durchgeführt, bspw. weil der authentifizierte Benutzer nicht berechtigt ist oder ein als HTTPS konfigurierter URL nur mit HTTP aufgerufen wurde. |
404 | Not Found | Die angeforderte Ressource wurde nicht gefunden. Dieser Statuscode kann ebenfalls verwendet werden, um eine Anfrage ohne näheren Grund abzuweisen. Links, die auf solche Fehlerseiten verweisen, werden auch als Tote Links bezeichnet. „404“ gilt zudem als verbreitetes Meme. |
405 | Method Not Allowed | Die Anfrage darf nur mit anderen HTTP-Methoden (zum Beispiel GET statt POST) gestellt werden. Gültige Methoden für die betreffende Ressource werden im „Allow“-Header-Feld der Antwort übermittelt. |
406 | Not Acceptable | Die angeforderte Ressource steht nicht in der gewünschten Form zur Verfügung. Gültige „Content-Type“-Werte können in der Antwort übermittelt werden. |
407 | Proxy Authentication Required | Analog zum Statuscode 401 ist hier zunächst eine Authentifizierung des Clients gegenüber dem verwendeten Proxy erforderlich. Wie die Authentifizierung durchgeführt werden soll, wird im „Proxy-Authenticate“-Header-Feld der Antwort übermittelt. |
408 | Request Timeout | Innerhalb der vom Server erlaubten Zeitspanne wurde keine vollständige Anfrage des Clients empfangen. |
409 | Conflict | Die Anfrage wurde unter falschen Annahmen gestellt. Im Falle einer PUT-Anfrage kann dies zum Beispiel auf eine zwischenzeitliche Veränderung der Ressource durch Dritte zurückgehen. |
410 | Gone | Die angeforderte Ressource wird nicht länger bereitgestellt und wurde dauerhaft entfernt. |
411 | Length Required | Die Anfrage kann ohne ein „Content-Length“-Header-Feld nicht bearbeitet werden. |
412 | Precondition Failed | Eine in der Anfrage übertragene Voraussetzung, zum Beispiel in Form eines „If-Match“-Header-Felds, traf nicht zu. |
413 | Payload Too Large | Die gestellte Anfrage war zu groß, um vom Server bearbeitet werden zu können. Ein „Retry-After“-Header-Feld in der Antwort kann den Client darauf hinweisen, dass die Anfrage eventuell zu einem späteren Zeitpunkt bearbeitet werden könnte. |
414 | URI Too Long[8] | Die URI bzw. URL der Anfrage war zu lang. Ursache ist oft eine Endlosschleife aus Redirects. |
415 | Unsupported Media Type | Der Inhalt der Anfrage wurde mit ungültigem oder nicht erlaubtem Medientyp übermittelt. |
416 | Range Not Satisfiable | Der angeforderte Teil einer Ressource war ungültig oder steht auf dem Server nicht zur Verfügung. |
417 | Expectation Failed | Verwendet im Zusammenhang mit einem „Expect“-Header-Feld. Das im „Expect“-Header-Feld geforderte Verhalten des Servers kann nicht erfüllt werden. |
421 | Misdirected Request | Die Anfrage wurde an einen Server gesendet, der nicht in der Lage ist, eine Antwort zu senden. Eingeführt in HTTP/2. |
422 | Unprocessable Entity | Verwendet, wenn weder die Rückgabe von Statuscode 415 noch 400 gerechtfertigt wäre, eine Verarbeitung der Anfrage jedoch zum Beispiel wegen semantischer Fehler abgelehnt wird.[9] |
423 | Locked | Die angeforderte Ressource ist zurzeit gesperrt.[9] |
424 | Failed Dependency | Die Anfrage konnte nicht durchgeführt werden, weil sie das Gelingen einer anderen Anfrage voraussetzt.[9] |
425 | Too Early | Der Server bittet den Client die Anfrage erneut zu senden, da die TLS-Verbindung noch nicht vollständig hergestellt wurde.[10] Dies soll einen Replay-Angriff verhindern. |
426 | Upgrade Required | Der Server verlangt vom Client, dass er die Anfrage mit einem anderen Protokoll wiederholt.[11] Ein Anwendungsfall ist das Umschalten auf HTTP mit Transport Layer Security.[12] |
428 | Precondition Required | Für die Anfrage waren nicht alle Vorbedingungen erfüllt. Dieser Statuscode soll Probleme durch Race Conditions verhindern, indem eine Manipulation oder Löschen nur erfolgt, wenn der Client dies auf Basis einer aktuellen Ressource anfordert (Beispielsweise durch Mitliefern eines aktuellen ETag-Header).[13] |
429 | Too Many Requests | Der Client hat zu viele Anfragen in einem bestimmten Zeitraum gesendet.[13] |
431 | Request Header Fields Too Large | Die Maximallänge eines Headerfelds oder des Gesamtheaders wurde überschritten.[13] |
451 | Unavailable For Legal Reasons | Dieser Statuscode soll darauf hinweisen, dass die angeforderte Ressource aufgrund von gesetzlichen Bestimmungen (Copyrighteinschränkungen, Zensur etc., eventuell beschränkt auf ein bestimmtes Land) nicht verfügbar ist.[14]
Er wurde im Juni 2012 von Google-Mitarbeiter Tim Bray bei der IETF eingereicht[15] und gilt seit dem 17. Dezember 2015 als angenommen.[16] Bray schlug die Nummer 451 in Anspielung auf Ray Bradburys Roman Fahrenheit 451 vor und fügte einen Dank an den Autor an.[17] |
Beispiele für weitere, per Juli 2020 nicht in der Hypertext Transfer Protocol (HTTP) Status Code Registry[18] aufgeführte Codes: | ||
418 | I’m a teapot | Dieser Code ist als Aprilscherz der IETF zu verstehen. Innerhalb eines scherzhaften Protokolls zum Kaffeekochen, des Hyper Text Coffee Pot Control Protocols,[19] zeigt er an, dass fälschlicherweise eine Teekanne anstatt einer Kaffeekanne verwendet wurde. Dieser Scherz-Statuscode ist auf einigen Websites zu finden, obwohl er weder Bestandteil von HTTP ist noch in der Status Code Registry[18] definiert ist. Er soll zukünftig als „reserviert“ gelistet werden.[20] |
420 | Policy Not Fulfilled | In W3C PEP (Working Draft 21. November 1997)[21] wird dieser Code vorgeschlagen, um mitzuteilen, dass eine Bedingung nicht erfüllt wurde. |
444 | No Response | In nginx-Logs verwendet, um anzuzeigen, dass der Server keine Informationen zum Client zurückgesendet und die Verbindung geschlossen hat. |
449 | The request should be retried after doing the appropriate action | Genutzt in Antworten des Microsoft Exchange Servers.[22] |
499 | Client Closed Request | Ein nicht standardmäßiger Statuscode, der von nginx für den Fall eingeführt wurde, dass ein Client die Verbindung schließt, während nginx die Anforderung verarbeitet. |