Ошибки в протоколе HTTP — это поведение веб-сервера, когда по какой-то причине он не может успешно отправить запрошенный документ клиенту. Сервер сообщает клиенту код ошибки в заголовке HTTP.
Каждая ошибка, выданная веб-сервером, имеет код, соответствующий классу возникшей ошибки. Коды ошибок (такие как 403 или 404) стандартизированы и подробно описаны в интернет-стандарте RFC2616 (Hypertext Transfer Protocol — HTTP/1.1). Вы можете обратиться к этому документу для подробного описания конкретной ошибки как к первоисточнику.
Пример веб-запроса, выполненного вручную с помощью программы telnet:
# 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
Сервер вернул успешный код ошибки 200 (OK). Это был пример правильного запроса к документу, существующему на сервере, который был успешно завершен. Если бы запрошенный документ не существовал на сервере, сервер вел бы себя по-другому и выдал бы ошибку 404 (документ не найден):
# 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
Коды ошибок могут быть положительными и отрицательными или успешными и неудачными. Существует четыре типа кодов: