Код статуса 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
  • 306: (не используется, но зарезервировано)
  • 307: Temporary Redirect

4xx Ошибки клиента

Запрос содержит ошибки или не может быть выполнен

  • 400: Bad Request (Некорректный запрос)
  • 401: Unauthorized (Аудентификация не прошла)
  • 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


Ссылки