Datum: | Internet, Netzwerk

http status codes

Jeder Internet-Nutzer wird irgendwann einmal mit der Meldung „Fehler 404 – diese Seite existiert nicht“ konfrontiert. Dabei handelt es sich um einen von zahlreichen HTTP-Status-Codes, mit dem der Server auf die Anfrage Ihres Clients antwortet. Diese bestehen aus einer dreistelligen Zahl und geben Auskunft über Erfolg oder Misserfolg eines Request. In diesem Beitrag haben wir die wichtigsten HTTP-Status-Codes und Ihre Bedeutung einmal für Sie zusammengefasst.

Was ist ein HTTP-Status-Code?

Darunter versteht man die Antwort eines Servers auf eine HTTP-Anfrage („Request“) eines Clients. In der Regel handelt es sich dabei um einen Webbrowser (z.B. Chrome, Firefox oder Opera).

Was bedeuten die Zahlen bei den HTTP-Status-Codes?

Die erste Ziffer des dreistelligen Codes steht für die Status-Klasse (z.B. „Server-Fehler“ oder „Erfolgreiche Operation“). Zudem werden sie in verschiedenen RFC („Request for Comments“) Dokumenten klassifiziert.

Wie kann ich die HTTP-Status-Codes checken?

Der Webbrowser zeigt die Status Codes in der Regel nicht an. Um diese zu beobachten, benötigen Sie spezielle Tools oder entsprechende Browser-Erweiterungen.

Die wichtigsten HTTP-Status-Codes im Überblick

1xx: Informative Codes

Code

Nachricht

HTTP-Version

Beschreibung

100

Continue

1.1

Die Anfrage wurde akzeptiert, wird aber noch bearbeitet. Der Server wartet auf weitere Anfragen des Clients.

101

Switching Protocols

1.1

Der Code wird üblicherweise auf Client-Seite angefragt und gibt an, dass der Server mit einem Protokoll-Wechsel (z.B. von HTTP zu einem anderen Protokoll) einverstanden ist.

102

Processing

2.0

Dient zur Vermeidung von Time-Outs, während der Server zeitintensive Anfragen (z.B. infolge eines WebDAV-Requests mit mehreren SubRequests) verarbeitet.

Gut zu wissen: WebDAV (Web-based Distributed Authoring and Versioning) wurde entwickelt, um Dokumente und Dateien innerhalb eines Netzwerks basierend auf HTTP bearbeiten und verändern zu können.

2xx: Erfolgreiche Operationen

Code

Nachricht

HTTP-Version

Beschreibung

200

OK

1.0 / 1.1

Die Anfrage war erfolgreich. Das Ergebnis wird zusammen mit der Antwort übermittelt.

201

Created

1.0 / 1.1

Eine neue Ressource wurde erstellt und zwischenzeitlich geladen. Ein Code 201 wird typischerweise als Antwort des Servers auf einen sogenannte PUT-Anfrage übermittelt.

202

Accepted

1.0 / 1.1

Die Client-Anfrage wurde akzeptiert, wird aber erst später ausgeführt.

203

Non-Authoritative Information

1.0 / 1.1

Der Server übernimmt die Rolle eines sogenannten „Transforming Proxy“. Er erhält einen Code 200 von der Quelle und liefert im Anschluss einen modifizierte Version der Antwort (der Quelle).

204

No Content

1.0 / 1.1

Die Anfrage war erfolgreich, die Antwort enthält aber (bewusst) keine Daten. Den Clients soll weiterhin der alte Inhalt angezeigt werden.

205

Reset Content

1.1.

Die Anfrage war erfolgreich. Der Client soll das Dokument neu laden und die Formulareingaben zurücksetzen.

206

Partial Content

1.1.

Sendet der Client einen sogenannte „Range Header“-Request, dann antwortet der Server mit Code 206 und informiert über die Übermittlung von Teilen der angeforderten Ressource. Ein typisches Beispiel dafür sind unterbrochene und wiederaufgenommene Downloads.

207

Multi-Status

2.0.

Die Antwort beinhaltet ein XML-Dokument, das mehrere Statuscodes zu eigenständigen Operationen enthält.

208

Already Reported

1.1

Der Code 208 wird innerhalb einer WebDAV-Bindung verwendet und zeigt an, dass die Mitglieder der Bindung zuvor bereits aufgezählt wurden und daher in dieser Antwort nicht mehr vorhanden sind.

226

IM Used

 

Der Server hat eine GET-Anfrage erfüllt. Die Antwort enthält das Ergebnis einer oder mehrerer Instanz-Manipulationen dieser Instanz.

3xx: Umleitungen

Code

Nachricht

HTTP-Version

Beschreibung

300

Multiple Choices

1.1

Die angefragte Ressource liegt in mehreren Arten vor. Die Antwort enthält eine Liste der möglichen Varianten.

301

Moved Permanently

1.0 / 1.1

Code 301 (Redirect) gibt an, dass die angeforderte Ressource künftig unter der im „Location“-Header-Feld genannten Adresse bereitsteht. Die alte Adresse ist nicht mehr gültig.

302

Found (Moved Temporarily)

1.0 / 1.1

Laut Status-Code 302 ist die Ressource vorübergehend unter der im Header genannten Adresse erreichbar. Die alte Adresse bleibt aber weiterhin gültig.

303

See Other

1.1

Die Antwort des Servers kann unter einer anderen URI-Adresse mit Hilfe der GET-Methode abgeholt werden. Damit ist nach einer POST-Abfrage ein nahtloser Wechsel zu einer ausgewählten Ressource möglich.

304

Not Modified

1.0 / 1.1

Der Status-Code 304 zeigt an, dass sich am Inhalt der angeforderten Ressource seit der letzten Anfrage nichts geändert hat. Die Antwort enthält daher auch keine Daten.

305

Use Proxy

1.1

Die Ressource ist nur über den im „Location“-Header angegebenen Proxy erreichbar.

306

(unused)

1.1

Der Status-Code 306 ist zwar reserviert, wird aber nicht mehr verwendet. Er diente ursprünglich für die Antwort „Switch Proxy“.

307

Temporary Redirect

1.1

Die angeforderte Ressource wurde gefunden und steht vorübergehend unter der im „Location“-Header-Feld angegebenen Adresse bereit. Die alte Adresse bleibt aber weiterhin gültig. Der Browser soll mit derselben Methode folgen wie beim ursprünglichen Request.

308

Permanent Redirect

 

Die angeforderte Ressource wurde gefunden und steht vorübergehend unter der im „Location“-Header-Feld angegebenen Adresse bereit. Die alte Adresse ist nicht mehr gültig. Die kommenden Browser-Abfragen soll mit derselben Methode erfolgen wie beim ursprünglichen Request.

4xx: Client-Fehler

Code

Nachricht

HTTP-Version

Beschreibung

400

Bad Request

1.0 / 1.1

Die Anfrage war fehlerhaft, daher kann sie vom Server nicht bearbeitet werden.

401

Unauthorized

1.0 / 1.1

Die Anfrage kann ohne entsprechende Autorisierung nicht verarbeitet werden. Im WWW_Authenticate-Antwortheader wird erläutert, wie die Authentifizierung durchzuführen ist.

402

Payment Required

1.1

Bezahlung erforderlich. Der Statuscode ist für die zukünftige Verwendung reserviert.

403

Forbidden

1.0 / 1.1

HTTP Fehler 403 zeigt an, dass der Zugriff auf die Inhalte mangels Berechtigung des Clients dauerhaft verboten ist. Die Anfrage soll nicht noch einmal gestellt werden.

404

Not Found

1.0 / 1.1

Der Server konnte die angeforderte Ressource nicht finden. Ursache dafür ist in den meisten Fällen ein sogenannter „Toter Link“.

405

Method Not Allowed

1.1

Status-Code 405 besagt, dass die Anfrage-Methode nicht erlaubt ist und nur mit anderen Methoden (z.B. GET oder POST) gestellt werden darf.

406

Not Acceptable

1.1

Der Status-Code 406 zeigt an, dass die angefragte Ressource nicht in der vom Client gewünschten Form geliefert werden.

407

Proxy Authentication Required

1.1

Ähnlich wie beim Status-Code 401 erfordert diese Antwort eine Authentifizierung. In diesem Fall muss sich der Client allerdings gegenüber einem Proxy ausweisen, welcher dazu das Antwortfeld Proxy-Authenticate mitliefern muss.

408

Request Timeout

1.1

Der Client hat die Anfrage nicht in der vom Server vorgegebenen Zeit beendet. HTTP Fehler 408 tritt z.B. beim Upload großer Dateien etc. auf.

409

Conflict

1.1

Die Anfrage wurde unter falschen Annahmen gestellt und kann nicht bearbeitet werden, da ansonsten ein Konfliktfall bei der anfragenden Ressource entstehen würde. Im Falle einer PUT-Anfrage kann dies zum Beispiel auf eine zwischenzeitliche Veränderung der Ressource durch Dritte zurückgehen.

410

Gone

1.1

Die Ressource existiert nicht mehr und wurde dauerhaft entfernt.

411

Length Required

1.1

Die Bearbeitung der Anfrage ohne „Content-Length“-Header wird vom Server abgelehnt.

412

Precondition Failed

1.1

Eine durch den Client vorgegebene Bedingung ist nicht erfüllbar.

413

Request Entity Too Large

1.1

Die gestellte Anfrage war zu groß, um vom Server bearbeitet werden zu können und wird daher abgelehnt. Ursache hierfür kann z.B. eine hochgeladene Datei sein.

414

URI Too Long

1.1

Die Anfrage-URL ist zu lang.

415

Unsupported Media Type

1.1

Der angefragte Medien- oder MIME-Typ wird nicht unterstützt.

416

Requested range not satisfiable

1.1

Der angefragte Teilbereich der Ressource existiert nicht oder ist ungültig. Tritt beispielsweise im Zusammenhang mit partiellen Downloads auf.

417

Expectation Failed

1.1

Wird im Zusammenhang mit einem „Expect“-Header-Feld verwendet. Das im „Expect“-Header-Feld vom Client geforderte Verhalten des Servers kann nicht erfüllt werden.

420

Policy Not Fulfilled

1.1

Vorschlag in W3C PEP (Working Draft 21. November 1997), um mitzuteilen, dass eine Bedingung nicht erfüllt wurde.

421

Misdirected Request

2.0

Die Anfrage ging an einen Server, der nicht in der Lage ist, eine Antwort zu senden.

422

Unprocessable Entity

1.1

Der Status-Code wird 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.

423

Locked

1.1

Die angeforderte Ressource ist zur Zeit gesperrt.

424

Failed Dependency

1.1

Die Anfrage konnte nicht durchgeführt werden, weil sie das Gelingen einer vorherigen Anfrage voraussetzt.

426

Upgrade Required

1.1

Der Server besteht darauf, dass der Client die Anfrage mit einem anderen Protokoll wiederholt. Ein typischer Anwendungsfall ist das Umschalten auf HTTP mit Transport Layer Security.

428

Precondition Required

1.1

Die für die Anfrage notwendigen Vorbedingungen wurden nicht alle erfüllt.

429

Too Many Requests

1.1

Der Client hat zu viele Anfragen innerhalb eines bestimmten Zeitraumes gestellt.

431

Request Header Fields Too Large

1.1

Die Maximallänge eines Header-Feldes oder des Gesamt-Headers wurde überschritten.

451

Unavailable For Legal Reasons

1.1

Die Ressource ist aus rechtlichen Gründen nicht verfügbar (z.B. aufgrund von Copyright oder Zensur in bestimmten Ländern). Der Status-Code wurde 2015 eingeführt und ist nach Ray Bradburys Roman „Fahrenheit 451“ benannt.

Gut zu wissen: Mit dem Status 418 gibt es noch einen weiteren Code der Kategorie Client-Fehler. Innerhalb eines nicht ganz ernst gemeinten Protokolls zum Kaffeekochen (Hyper Text Coffee Pot Control Protocol) zeigt dieser an, dass anstelle einer Kaffeekanne fälschlicherweise eine Teekanne verwendet wurde. Der Statuscode ist aber weder Bestandteil von HTTP noch in der SCR („Status Code Registry“) definiert.

5xx: Server-Fehler

Code

Nachricht

HTTP-Version

Beschreibung

500

Internal Server Error

1.0 / 1.1

Status-Code 500 wird dann angezeigt, wenn die Anfrage aufgrund eines internen (Server-)Fehlers nicht ausgeführt werden kann.

501

Not Implemented

1.0 / 1.1

Der Server verfügt nicht über die notwendige Funktionalität, um die Anfrage bearbeiten zu können. Ursache ist häufig eine unbekannte oder nicht unterstützte HTTP-Methode.

502

Bad Gateway

1.0 / 1.1

HTTP Fehler 502 bedeutet, dass der Server seine Funktion als Gateway oder Proxy nicht erfüllen konnte, weil im weiteren Verlauf ein Fehler aufgetreten ist.

503

Service Unavailable

1.0 / 1.1

Der Dienst bzw. Server ist zur Zeit nicht verfügbar. Das ist beispielsweise bei Wartungsarbeiten oder Überlastung etc. der Fall.

504

Gateway Timeout

1.1

Die Anfrage kann vom Proxy aufgrund einer Zeitüberschreitung nicht bearbeitet werden.

505

HTTP Version not supported

1.1

Die angeforderte HTTP-Version wird nicht unterstützt.

506

Variant Also Negotiates

 

Die Inhaltsvereinbarung der Anfrage ergibt einen Zirkelbezug.

507

Insufficient Storage

 

Die Anfrage konnte nicht bearbeitet werden, da der aktuell verfügbare Speicherplatz des Servers dafür nicht ausreicht.

508

Loop Detected

 

Die Operation wurde nicht ausgeführt, weil die Ausführung in eine Endlosschleife gelaufen wäre. Der Status-Code ist in der Binding-Erweiterung für WebDAV (gemäß RFC 5842) definiert, da durch Bindings zyklische Pfade zu WebDAV-Ressourcen entstehen können.

509

Bandwidth Limit Exceeded

 

Die Anfrage des Clients wurde verworfen, da ansonsten die verfügbare Bandbreite überschritten worden wäre.  Bei diesem Status-Code handelt es sich um eine inoffizielle Erweiterung einiger Server.

510

Not Extended

 

Die Anfrage enthält nicht alle Informationen, die die angefragte Server-Extension zwingend erwartet (RFC 2774).

511

Network Authentication Required

 

Der Client muss sich erst authentifizieren, bevor er Zugriff zum Netzwerk erhält.

Hinweis: Einige Software-Hersteller verwenden proprietäre HTTP-Status-Codes, die ab 9XX beziffert werden. Es handelt sich bei diesem Zahlenbereich allerdings um einen Sonderfall, der in den RFC-Dokumenten nicht erwähnt wird und damit auch jenseits des Standards liegt.

Im folgenden Video werden die wichtigsten HTTP-Status-Codes noch einmal erklärt:

42 Bewertungen

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne Ø 4,80
Loading...

Hinterlasse eine Antwort

(wird nicht veröffentlicht)

Nutzungsrichtlinien beachten