Код статуса HTTP
Материал из ЭНЭ
Коды HTTP (англ. Status Code Definitions)
Коды статуса, используемые в протоколе HTTP определяются в RFC 2616.
Коды делятся на 5 классов в зависимости от первой цифры в коде :
- 100 - 199: Информационные
- 200 - 299: Запрос клиента успешен
- 300 - 399: Запрос не выполнен полностью, и сервер ждет от посетителя некоторых действий для удовлетворения запроса. (достаточно очень редкие ошибки)
- 400 - 499: Ошибки клиента (самые частые ошибки).
- 500 - 599: Ошибки сервера.
Содержание
1xx Информационные
Запрос принят, идет обработка
- 100: Continue
- 101: Switching Protocols
2xx Запрос успешен
Запрос клиента успешно принят и обработан.
- 200: OK
- 201: Created
- 202: Accepted
- 203: Non-Authoritative Information
- 204: No Content
- 205: Reset Content
- 206: Partial Content
- 207: Multi-Status
- For use with XML-based responses when a number of actions could have been requested – details of the separate statuses are given in the message body. See WebDAV for associated specifications.
3xx Перенаправление
Клиент должен выполнить дополнительные действия для завершения выполнения запроса
- 300: Multiple Choices
- 301: Moved Permanently
- 302: Moved Temporarily (HTTP/1.0)
- 302: Found (HTTP/1.1)
- 303: See Other (HTTP/1.1)
- 304: Not Modified
- 305: Use Proxy
- Многие HTTP-клиенты (например, Мозилла и Интернет Эксплорер) не обрабатывают корректно ответы с таким кодом
- 306: (не используется, но зарезервировано)
- 307: Temporary Redirect
4xx Ошибки клиента
Запрос содержит ошибки или не может быть выполнен
- 400: Bad Request (Некорректный запрос)
- 401: Unauthorized (Аудентификация не прошла)
- Аналогично 403/Forbidden, но используется когда аудентификация возможна, но закончилась ошибкой или еще не выполнялась Смотри схемы аудентификации
- 402: Payment Required (Требуется оплата)
- Первоначальные намерения были использовать этот код как часть какой-либо схемы электронного платежа, но этого не получилось и практически этот код не используется
- 403: Forbidden (доступ запрещен)
- 404: Not Found (страница не найдена)
- 405: Method Not Allowed (Недопустимый метод)
- 406: Not Acceptable (Неприемлемый запрос)
- 407: Proxy Authentication Required (Необходима регистрация на Proxy-сервере)
- 408: Request Timeout (Время обработки запроса истекло)
- 409: Conflict (Конфликт)
- 410: Gone (Ресурса больше нет)
- 411: Length Required (Необходимо указать длину)
- 412: Precondition Failed (Не выполнено предварительное условие)
- 413: Request Entity Too Large (Запрашиваемый элемент слишком большой)
- 414: Request-URI Too Long (Идентификатор ресурса в запросе слишком длинный)
- 415: Unsupported Media Type (Неподдерживаемый тип устройства)
- 416: Requested Range Not Satisfiable
- 417: Expectation Failed
- 449: Retry With
- Расширение Microsoft: The request should be retried after doing the appropriate action.
5xx Ошибки сервера
The server failed to fulfill an apparently valid request.
- 500: Internal Server Error Внутренняя ошибка сервера
- 501: Not Implemented Невыполнимо. Сервер не поддерживает функцию, которая должна быть реализована в ходе исполнения запроса. Это адекватный отклик, когда сервер не распознает метод запроса и не способен поддерживать его для данного ресурса.
- 502: Bad Gateway, Дефект шлюза. Сервер при работе в качестве шлюза или прокси получил неверный отклик от вышестоящего сервера, к которому он обратился, выполняя запрос. Один из вариантов - вышестоящий прокси недоступен или не работает
- 503: Service Unavailable Служба недоступна. Сервер в данный момент не может обработать запрос в связи с временной перегрузкой или другими обстоятельствами. Существование кода 503 не предполагает, что сервер должен использовать его, когда оказывается перегруженным. Некоторые серверы могут просто отказаться устанавливать соединение.
- 504: Gateway Timeout Время прохождения через шлюз истекло
- 505: HTTP Version Not Supported
- 507 HTTP INSUFFICIENT STORAGE /* RFC2518 section 10.6 */
- 509: Bandwidth Limit Exceeded
- Этот код хотя и используется многими серверами, не является официальным кодом статуса в HTTP.
6xx Зарезервированные коды
Прокси-сервер Squid:
- 600 HTTP_INVALID_HEADER, /* Squid header parsing error */
- 601 HTTP_HEADER_TOO_LARGE = 601 /* Header too large to process */
См.также o