Ralf Zimmermann SIEGNETZ.IT GmbH

HTTP Status Codes

1xx Informationen

Zurück zum Seitenanfang
CodeNachrichtBedeutung
100ContinueDie laufende Anfrage an den Server wurde noch nicht zurückgewiesen. (Wird im Zusammenhang mit dem „Expect 100-continue“-Header-Feld verwendet.) Der Client kann nun mit der potentiell sehr großen Anfrage fortfahren.
101Switching ProtocolsWird verwendet, wenn der Server eine Anfrage mit gesetztem „Upgrade“-Header-Feld empfangen hat und mit dem Wechsel zu einem anderen Protokoll einverstanden ist. Anwendung findet dieser Status-Code beispielsweise im Wechsel von HTTP zu WebSocket.
102ProcessingWird verwendet, um ein Timeout zu vermeiden, während der Server eine zeitintensive Anfrage bearbeitet.

[Quelle: http://de.wikipedia.org/wiki/HTTP-Statuscode]

2xx Erfolgreiche Operation

Zurück zum Seitenanfang
CodeNachrichtBedeutung
200OKDie Anfrage wurde erfolgreich bearbeitet und das Ergebnis der Anfrage wird in der Antwort übertragen.
201CreatedDie Anfrage wurde erfolgreich bearbeitet. Die angeforderte Ressource wurde vor dem Senden der Antwort erstellt. Das „Location“-Header-Feld enthält eventuell die Adresse der erstellten Ressource.
202AcceptedDie Anfrage wurde akzeptiert, wird aber zu einem späteren Zeitpunkt ausgeführt. Das Gelingen der Anfrage kann nicht garantiert werden.
203Non-Authoritative InformationDie Anfrage wurde bearbeitet, das Ergebnis ist aber nicht unbedingt vollständig und aktuell.
204No ContentDie Anfrage wurde erfolgreich durchgeführt, die Antwort enthält jedoch bewusst keine Daten.
205Reset ContentDie Anfrage wurde erfolgreich durchgeführt; der Client soll das Dokument neu aufbauen und Formulareingaben zurücksetzen.
206Partial ContentDer angeforderte Teil wurde erfolgreich übertragen (wird im Zusammenhang mit einem „Content-Range“-Header-Feld oder dem Content-Type multipart/byteranges verwendet). Kann einen Client über Teil-Downloads informieren (wird zum Beispiel von Wget genutzt, um den Downloadfortschritt zu überwachen oder einen Download in mehrere Streams aufzuteilen).
207Multi-StatusDie Antwort enthält ein XML-Dokument, das mehrere Statuscodes zu unabhängig voneinander durchgeführten Operationen enthält.
208Already ReportedWebDAV RFC 5842 – Die Mitglieder einer WebDAV-Bindung wurden bereits zuvor aufgezählt und sind in dieser Anfrage nicht mehr vorhanden.
226IM UsedRFC 3229 – Der Server hat eine GET-Anforderung für die Ressource erfüllt, die Antwort ist eine Darstellung des Ergebnisses von einem oder mehreren Instanz-Manipulationen, bezogen auf die aktuelle Instanz.

[Quelle: http://de.wikipedia.org/wiki/HTTP-Statuscode]

3xx Umleitung

Zurück zum Seitenanfang
CodeNachrichtBedeutung
300Multiple ChoicesDie angeforderte Ressource steht in verschiedenen Arten zur Verfügung. Die Antwort enthält eine Liste der verfügbaren Arten. Das „Location“-Header-Feld enthält eventuell die Adresse der vom Server bevorzugten Repräsentation.
301Moved PermanentlyDie angeforderte Ressource steht ab sofort unter der im „Location“-Header-Feld angegebenen Adresse bereit (auch Redirect genannt). Die alte Adresse ist nicht länger gültig.
302FoundDie angeforderte Ressource steht vorübergehend unter der im „Location“-Header-Feld angegebenen Adresse bereit. Die alte Adresse bleibt gültig. Die Browser folgen meist mit einem GET, auch wenn der ursprüngliche Request ein POST war. Wird in HTTP/1.1 je nach Anwendungsfall durch die Statuscodes 303 bzw. 307 ersetzt. 302-Weiterleitung ist aufgrund eines Suchmaschinen-Fehlers, dem URL-Hijacking, in Kritik geraten.
303See OtherDie Antwort auf die durchgeführte Anfrage lässt sich unter der im „Location“-Header-Feld angegebenen Adresse beziehen. Der Browser soll mit einem GET folgen, auch wenn der ursprüngliche Request ein POST war.
304Not ModifiedDer Inhalt der angeforderten Ressource hat sich seit der letzten Abfrage des Clients nicht verändert und wird deshalb nicht übertragen.
305Use ProxyDie angeforderte Ressource ist nur über einen Proxy erreichbar. Das „Location“-Header-Feld enthält die Adresse des Proxy.
306(reserviert)306 wird nicht mehr verwendet, ist aber reserviert. Es wurde für „Switch Proxy“ verwendet.
307Temporary RedirectDie angeforderte Ressource steht vorübergehend unter der im „Location“-Header-Feld angegebenen Adresse bereit. Die alte Adresse bleibt gültig. Der Browser soll mit derselben Methode folgen wie beim ursprünglichen Request (d. h. einem POST folgt ein POST). Dies ist der wesentliche Unterschied zu 302/303.
308Permanent RedirectExperimentell eingeführt via RFC; die angeforderte Ressource steht ab sofort unter der im „Location“-Header-Feld angegebenen Adresse bereit, die alte Adresse ist nicht länger gültig. Der Browser soll mit derselben Methode folgen wie beim ursprünglichen Request (d. h. einem POST folgt ein POST). Dies ist der wesentliche Unterschied zu 302/303.

[Quelle: http://de.wikipedia.org/wiki/HTTP-Statuscode]

4xx Client Fehler

Zurück zum Seitenanfang
CodeNachrichtBedeutung
400Bad RequestDie Anfrage-Nachricht war fehlerhaft aufgebaut.
401UnauthorizedDie 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.
402Payment RequiredÜbersetzt: Bezahlung benötigt. Dieser Status ist für zukünftige HTTP-Protokolle reserviert.
403ForbiddenDie Anfrage wurde mangels Berechtigung des Clients nicht durchgeführt. Diese Entscheidung wurde – anders als im Fall des Statuscodes 401 – unabhängig von Authentifizierungsinformationen getroffen, auch etwa wenn eine als HTTPS konfigurierte URL nur mit HTTP aufgerufen wurde.
404Not FoundDie angeforderte Ressource wurde nicht gefunden. Dieser Statuscode kann ebenfalls verwendet werden, um eine Anfrage ohne näheren Grund abzuweisen. Links, welche auf solche Fehlerseiten verweisen, werden auch als Tote Links bezeichnet.
405Method Not AllowedDie 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.
406Not AcceptableDie angeforderte Ressource steht nicht in der gewünschten Form zur Verfügung. Gültige „Content-Type“-Werte können in der Antwort übermittelt werden.
407Proxy Authentication RequiredAnalog 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.
408Request Time-outInnerhalb der vom Server erlaubten Zeitspanne wurde keine vollständige Anfrage des Clients empfangen.
409ConflictDie 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.
410GoneDie angeforderte Ressource wird nicht länger bereitgestellt und wurde dauerhaft entfernt.
411Length RequiredDie Anfrage kann ohne ein „Content-Length“-Header-Feld nicht bearbeitet werden.
412Precondition FailedEine in der Anfrage übertragene Voraussetzung, zum Beispiel in Form eines „If-Match“-Header-Felds, traf nicht zu.
413Request Entity Too LargeDie 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.
414Request-URL Too LongDie URL der Anfrage war zu lang. Ursache ist oft eine Endlosschleife aus Redirects.
415Unsupported Media TypeDer Inhalt der Anfrage wurde mit ungültigem oder nicht erlaubtem Medientyp übermittelt.
416Requested range not satisfiableDer angeforderte Teil einer Ressource war ungültig oder steht auf dem Server nicht zur Verfügung.
417Expectation FailedVerwendet im Zusammenhang mit einem „Expect“-Header-Feld. Das im „Expect“-Header-Feld geforderte Verhalten des Servers kann nicht erfüllt werden.
418I’m a teapotDieser Code ist als Aprilscherz der IETF zu verstehen, welcher näher unter RFC 2324, Hyper Text Coffee Pot Control Protocol, beschrieben ist. Innerhalb eines scherzhaften Protokolls zum Kaffeekochen zeigt er an, dass fälschlicherweise eine Teekanne anstatt einer Kaffeekanne verwendet wurde. Dieser Statuscode ist allerdings kein Bestandteil von HTTP, sondern lediglich von HTCPCP (Hyper Text Coffee Pot Control Protocol). Trotzdem ist dieser Scherz-Statuscode auf einigen Webseiten zu finden, real wird aber der Statuscode 200 gesendet.
420Policy Not FulfilledIn W3C PEP (Working Draft 21. November 1997) wird dieser Code vorgeschlagen, um mitzuteilen, dass eine Bedingung nicht erfüllt wurde.
421There are too many connections from your internet addressVerwendet, wenn die Verbindungshöchstzahl überschritten wird. Ursprünglich wurde dieser Code in W3C PEP (Working Draft 21. November 1997) vorgeschlagen, um auf den Fehler „Bad Mapping“ hinzuweisen.
422Unprocessable EntityVerwendet, 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.
423LockedDie angeforderte Ressource ist zurzeit gesperrt.
424Failed DependencyDie Anfrage konnte nicht durchgeführt werden, weil sie das Gelingen einer vorherigen Anfrage voraussetzt.
425Unordered CollectionIn den Entwürfen von WebDav Advanced Collections definiert, aber nicht im „Web Distributed Authoring and Versioning (WebDAV) Ordered Collections Protocol“.
426Upgrade RequiredDer Client sollte auf Transport Layer Security (TLS/1.0) umschalten.
428Precondition RequiredFür die Anfrage sind nicht alle Vorbedingungen erfüllt gewesen. 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).
429Too Many RequestsDer Client hat zu viele Anfragen in einem bestimmten Zeitraum gesendet.
431Request Header Fields Too LargeDie Maximallänge eines Headerfelds oder des Gesamtheaders wurde überschritten
444No ResponseIn Nginx-Logs verwendet, um anzuzeigen, dass der Server keine Informationen zum Client zurückgesendet und die Verbindung geschlossen hat.
449The request should be retried after doing the appropriate actionGenutzt in Antworten des Microsoft Exchange Servers.
451Unavailable For Legal ReasonsVom Google-Mitarbeiter Tim Bray vorgeschlagener Statuscode. Dieser Code 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. Eine Danksagung am Ende dieses Vorschlages verweist auf den Autor Ray Bradbury dessen Werk Fahrenheit 451 eine Erklärung für die Wahl des vorgeschlagenen Status-Codes gerade auch für zensierte Ressourcen gibt.

[Quelle: http://de.wikipedia.org/wiki/HTTP-Statuscode]

5xx Server Fehler

Zurück zum Seitenanfang
CodeNachrichtBedeutung
500Internal Server ErrorDies ist ein „Sammel-Statuscode“ für unerwartete Serverfehler.
501Not ImplementedDie Funktionalität, um die Anfrage zu bearbeiten, wird von diesem Server nicht bereitgestellt. Ursache ist zum Beispiel eine unbekannte oder nicht unterstützte HTTP-Methode.
502Bad GatewayDer Server konnte seine Funktion als Gateway oder Proxy nicht erfüllen, weil er seinerseits eine ungültige Antwort erhalten hat.
503Service UnavailableDer Server steht temporär nicht zur Verfügung, zum Beispiel wegen Überlastung oder Wartungsarbeiten. Ein „Retry-After“-Header-Feld in der Antwort kann den Client auf einen Zeitpunkt hinweisen, zu dem die Anfrage eventuell bearbeitet werden könnte.
504Gateway Time-outDer Server konnte seine Funktion als Gateway oder Proxy nicht erfüllen, weil er innerhalb einer festgelegten Zeitspanne keine Antwort von seinerseits benutzten Servern oder Diensten erhalten hat.
505HTTP Version not supportedDie benutzte HTTP-Version (gemeint ist die Zahl vor dem Punkt) wird vom Server nicht unterstützt oder abgelehnt.
506Variant Also NegotiatesDie Inhaltsvereinbarung der Anfrage ergibt einen Zirkelbezug.
507Insufficient StorageDie Anfrage konnte nicht bearbeitet werden, weil der Speicherplatz des Servers dazu zurzeit nicht mehr ausreicht.
508Loop DetectedDie Operation wurde nicht ausgeführt, weil die Ausführung in eine Endlosschleife gelaufen wäre. Definiert in der Binding-Erweiterung für WebDAV gemäß RFC 5842, weil durch Bindings zyklische Pfade zu WebDAV-Ressourcen entstehen können.
509Bandwidth Limit ExceededDie Anfrage wurde verworfen, weil sonst die verfügbare Bandbreite überschritten würde (inoffizielle Erweiterung einiger Server).
510Not ExtendedDie Anfrage enthält nicht alle Informationen, die die angefragte Server-Extension zwingend erwartet.

[Quelle: http://de.wikipedia.org/wiki/HTTP-Statuscode]

9xx Proprietäre Statuscodes

Zurück zum Seitenanfang
CodeNachrichtBedeutung
900–905 und 907Beim Erhalt der Anfrage des Client ist ein Fehler aufgetreten.
906Bei der Übermittlung der Anfrage vom Client zum Remote-Server ist ein Fehler aufgetreten.
950Bei der Interpretation einer Administrator-Anfrage des Nutzers ist ein Fehler aufgetreten.

[Quelle: http://de.wikipedia.org/wiki/HTTP-Statuscode]

Seitenfang