Gli errori nel protocollo HTTP sono il comportamento di un server Web quando, per qualche motivo, non può inviare con successo il documento richiesto al client. Il server comunica il codice di errore al client nell’intestazione HTTP.
Ogni errore emesso dal server web ha un codice corrispondente alla classe di errore che si è verificato. I codici di errore (come 403 o 404) sono standardizzati e descritti in dettaglio nello standard Internet RFC2616 (Hypertext Transfer Protocol — HTTP/1.1). Per una descrizione dettagliata di un errore specifico si può fare riferimento a questo documento come fonte originale.
Un esempio di richiesta web effettuata manualmente con il programma telnet:
# telnet www.ava.hosting 80
Prova 217.16.20.20…
Connesso a www.ava.hosting.
HEAD / HTTP/1.1
Host: www.ava.hosting
HTTP/1.1 200 OK
Data: Mon, 29 Mar 2004 08:24:07 GMT
Server: CoffeeMaker/1.12 (Unix) mod_ssl/2.8 OpenSSL/0.9
Il server ha restituito un codice di errore 200 (OK). Questo è un esempio di richiesta corretta a un documento esistente sul server che è stata completata con successo. Se il documento richiesto non esistesse sul server, il server si comporterebbe diversamente e restituirebbe un errore 404 (documento non trovato):
# telnet www.ava.hosting 80
Provato 217.16.20.20…
Connesso a www.ava.hosting.
TESTA /abcdef HTTP/1.1
Host: www.ava.hosting
HTTP/1.1 404 Non trovato
Data: Mon, 29 Mar 2004 08:42:01 GMT
Server: CoffeeMaker/1.12 (Unix) mod_ssl/2.8 OpenSSL/0.9
I codici di errore possono essere positivi e negativi, oppure di successo e di insuccesso. Esistono quattro tipi di codici: