Fehler im HTTP-Protokoll sind das Verhalten eines Webservers, wenn er aus irgendeinem Grund das angeforderte Dokument nicht erfolgreich an den Client senden kann. Der Server teilt dem Client den Fehlercode im HTTP-Header mit.
Jeder vom Webserver ausgegebene Fehler hat einen Code, der der aufgetretenen Fehlerklasse entspricht. Die Fehlercodes (z. B. 403 oder 404) sind standardisiert und im Internetstandard RFC2616 (Hypertext Transfer Protocol — HTTP/1.1) ausführlich beschrieben. Sie können sich auf dieses Dokument beziehen, um eine detaillierte Beschreibung eines bestimmten Fehlers als Originalquelle zu erhalten.
Ein Beispiel für eine Web-Anfrage, die manuell mit dem Programm telnet gestellt wird:
# telnet www.ava.hosting 80
Trying 217.16.20.20...
Connected to www.ava.hosting.
HEAD / HTTP/1.1
Host: www.ava.hosting
HTTP/1.1 200 OK
Date: Mon, 29 Mar 2004 08:24:07 GMT
Server: CoffeeMaker/1.12 (Unix) mod_ssl/2.8 OpenSSL/0.9
Der Server gab einen erfolgreichen Fehlercode von 200 (OK) zurück. Dies war ein Beispiel für eine korrekte Anfrage an ein auf dem Server vorhandenes Dokument, die erfolgreich abgeschlossen wurde. Wenn das angeforderte Dokument auf dem Server nicht vorhanden wäre, würde sich der Server anders verhalten und einen 404-Fehler (Dokument nicht gefunden) ausgeben:
# telnet www.ava.hosting 80
Trying 217.16.20.20...
Connected to www.ava.hosting.
HEAD /abcdef HTTP/1.1
Host: www.ava.hosting
HTTP/1.1 404 Not Found
Date: Mon, 29 Mar 2004 08:42:01 GMT
Server: CoffeeMaker/1.12 (Unix) mod_ssl/2.8 OpenSSL/0.9
Fehlercodes können positiv und negativ oder erfolgreich und erfolglos sein. Es gibt vier Arten von Codes: