HTTP-Fehlermeldungen und ihre Bedeutung

Fehler bei der Verwendung von HTTP

Die Kommunikation bzw. der Datenaustausch zwischen einem Internet-Browser auf Seite des Benutzers und einem Internet-Server mit HTML-Seiten erfolgt über das Protokoll HTTP. Mittlerweile hat sich HTTP aufgrund seiner Verbreitung und relativ einfachen Handhabung auch als ziemlich universell einsetzbares Transportprotokoll durchgesetzt.

HTTP wird immer mehr auch als Alternative zu FTP für den Download von Dateien verwendet - dies, weil über viele öffentliche Webseiten ein einfacher HTTP-Transfer einfacher abwickelbar ist - der HTTP-Transfer über den TCP-Port 80 wird üblicherweise von keiner Firewall gesperrt - FTP auf Port 21 hingegen schon.

Der Aufruf von von Webservices als wichtiges Element in einer Service Orientierten Architektur wird ebenfalls häufig auf Basis von HTTP oder verwandeden Protokollen abgewickelt..

Bei der Übermittlung von Daten mittels HTTP werden zwischen Client (zum Beispiel ein Browser) und Server häufig Status-Codes ausgetauscht, ein Beispiel einer Kommunikaton ist in der HTTP-Beschreibung verfügbar.

Statuscodes von HTTP
Die Statuscodes sind im HTTP-Protokoll in verschiedene Kateogorien eingeteilt. In diesen Kategorien sind aber nicht nur die Fehlercodes enthalten sondern auch die Erfolgs-Codes, wenn die Anforderung einer Seite erfolgreich beantwortet werden kann.

Statuscode 1xx: Information (Informational)
Diese Codes sind hauptsächlich experimentell - zu Entwicklungszwecken - genutzt. Sie geben an, dass die Anfrage vom Client erhalten wurde und das Programm (der Server) fortfährt. 

Statuscode 2xx: 
Erfolgreiche Übertragung (Success)
Die Codes mit der Kennung 2xx werden zurückgegeben, wenn die Übertragung erfolgreich war, verstanden wurde und der Zugriff erlaubt ist. Typischerweise wird der Status Code 200 bei der erfolgreichen Übertragung einer Webseite angegeben.

200 = OK
201 = Created
202 = Accepted
204 = No Content
205 = Reset Content
206 = Partial Content

Statuscode 3xx: Weiterleitung (Redirection)
Diese Status-Codes werden verwendet um anzuzeigen, dass eine weitere Aktion vorgenommen werden muss bevor eine Seite zurückgegeben werden kann. So sagt der Code 301, dass die Seite verschoben wurde und verweist gleichzeitig auf die neue URL. 

301 = Moved Permanently
302 = Moved Temporarily
304 = Not Modified

Statuscode 4xx: Eingabe- oder Browserfehler (Client Error)
Ein Code aus dieser Kategorie wird zurückgegeben, falls die Anforderung vom Client falsch oder ungültig war. So bedeutet «404 - URL Not Found», dass der Request auf eine nicht (mehr) existente Seite verweist. Der Fehler 404 ist einer der häufigsten Fehler und wird oft von «toten Links» aus Suchmaschinen wie Google produziert, deren Indexe nicht auf dem aktuellen Stand sind.

400 = Bad Request
401 = Unauthorized
402 = Payment Required
403 = Forbidden
404 = Not Found
405 = Method Not Allowed
406 = Not Acceptable
407 = Proxy Authentication Required
408 = Request Timeout

Statuscode 5xx: Server Error
Falls diese Code-Klasse geliefert wird, kam es zu einem Verarbeitungs-Fehler auf Seite des Servers, beispielsweise eine ungültige Datenbank-Anfrage. 

500 = Internal Server Error
501 = Not Implemented
502 = Bad Gateway
503 = Service Unavailable
504 = Gateway Timeout