2.2.4 HTTP-Response: Statuscodes und Status-Line

Beim Server-Response, also der Antwort des Servers mittels HTTP, wird ein Status Code zurückgegeben. Dies ist eine dreistellige Nummer im Bereich von 100 - 599.

  • 100 - 199 Request erhalten, Prozess wird ausgeführt
  • 200 - 299 Erfolgreiche Bearbeitung
  • 300 - 399 Änderungen, Verlagerungen – der Client muss eine weitere Aktion veranlassen
  • 400 - 499 Fehler im Request
  • 500 - 599 Fehlermeldungen des Servers

Eine Übersicht und einfache Erklärung aller Statuscodes finden Sie bei Wikipedia.

Anfragen an einen Webserver.

Liste der wichtigen Statuscodes

  • 101 Switching Protocols
  • 200 OK Eine korrekte Antwort konnte zurückgesendet werden.
  • 201 Created Die Anfrage war erfolgreich und als Ergebnis wurde eine neue Ressource erstellt. Dies ist ein Statuscode, der typischerweise bei der Methode PUT vorkommt.
  • 202 Accepted Die Anfrage wurde akzeptiert, aber die Verarbeitung ist noch nicht abgeschlossen.
  • 204 No Content Die Anfrage war erfolgreich, aber der Server sendet keine Daten im Response. Dies zeigt oftmals auf einen Server, der einfach nur Informationen sammelt (für Marketingzwecke oder Werbung).
  • 206 Partial Content Der Server liefert nur einen Teil der Ressource, entsprechend der Range-Anfrage des Clients. Dies wird oft bei Videos genutzt.
  • 301 Moved Permanently Das angefragte Dokument wurde dauerhaft verschoben, siehe URL im Location-Header.
  • 302 Found Das angefragte Dokument wurde temporär verschoben, siehe URL im Location-Header. Eigentlich soll hierfür der Statuscode 307 verwendet werden.
  • 303 See Other Die angefragte Seite ist unter einer anderen Adresse zu finden.
  • 304 Not Modified Dokument soll von der eigenen Festplatte oder dem Proxy-Server geholt werden.
  • 307 Temporary Redirect Das angefragte Dokument wurde temporär verschoben, siehe URL im Location-Header.
  • 400 Bad Request Anfrage war nicht verständlich, Browserproblem.
  • 401 Unauthorized Eine Datei wurde angefragt, für den sich der User ausweisen muss.
  • 403 Forbidden Anfrage war verständlich, der Server weigert sich jedoch, das Dokument zu senden, da dieser oder der Client keine Berechtigung hat. Beispiel: keine Leserechte der Datei.
  • 404 Not Found
  • 405 Method Not Allowed Die verwendete Methode ist für die angefragte Ressource nicht zulässig. Typische "Fehlermeldung" wenn man bei einem Server die Methode PUT oder DELETE ausprobiert und diese hoffentlich nicht erlaubt ist.
  • 408 Request Time-out Server überlastet? Falsch konfiguriert?
  • 451 Unavailable For Legal Reasons Anfrage wurde aus rechlichen Gründen blockiert. Neuer Statuscode (seit 2016) in RFC 7725.
  • 500 Internal Server Error Interner Fehler, z.B., wenn das PHP-Programm fehlerhaft ist, oder der Server falsch konfiguriert wurde, oder Zugriffsrechte nicht als ausführbare Rechte gesetzt sind (Linux-System).
  • 501 Not Implemented Anfrage wird vom Server nicht unterstützt, da notwendige Module nicht implementiert sind.
  • 502 Bad Gateway Proxy- oder Gateway-Server erhielt eine ungültige Antwort von einem anderen Server, z.B. dem eigentlichen Webserver des Dokuments.
  • 503 Service Unavailable Z.B., wenn ein dahinter liegender Datenbankserver nicht reagiert.
  • 504 Gateway Time-out

Hinweis

Mit Statuscodes wurde und wird auch immer mal wieder "gespielt". So hat Google den ansonsten nicht vorhandenen Statuscode 418 definiert als 418 I'm a Teapot. Schauen Sie doch mal mit dem Web-Entwickler-Tool nach.

Auch der schon sehr früh eingeführte Statuscode 424 Site too ugly mit der Erklärung: Es wurde eine Webseite angefordert, die der Server aus ästhetischen Gründen nicht übermitteln kann. Header: Twentyseven-Frames: Yes, wenn die Seite aus mehr als 27 Frames besteht. Header: Under-Construction: Yes, wenn die Seite eine animierte „Under-Construction“-Grafik mit Bauarbeiter und Schaufel enthält. konnte sich leider noch nicht durchsetzen.