Коды состояния HTTP

Код состояния HTTP - часть первой строки ответа сервера, который информирует клиента о результате запроса. Состоит он из трех цифр, первая из которых указывает на класс состояния. За цифрами идет фраза, которая объясняет причину ответа.

Ниже приводим таблицу кодов состояния HTPP.

1xx: Информация

Статус кода Сообщение Описание
100 Continue Продолжай
Сервер удовлетворён начальными сведениями о запросе, и клиент может продолжать.
101 Switching Protocols Переключение протоколов
Клиент, пославший запрос, предлагает перейти на более подходящий для указанного ресурса протокол.
103 Checkpoint Контрольная точка
Используется в запросах с возможностью продолжения для возобновления после прерывания запросов POST или PUT.

2xx: Успех

Статус кода Сообщение Описание
200 OK OK — успешный запрос
HTTP запрос успешно обработан.
201 Created Создано
В результате успешного выполнения запроса был создан новый ресурс
202 Accepted Принято
Запрос был принят в обработку, но обработка еще не завершена.
203 Non-Authoritative Information Не авторитетная информация
Запрос был успешно обработан (аналогично ответу 200), но в этом случае передаваемая информация была взята не из первичного источника (например, из резервной копии или другого сервера) и может быть неактуальной.
204 No Content Нет контента
Запрос был успешно обработан, но не вернул какой-либо контент.
205 Reset Content Сброс контента
Запрос был обработан, но не вернул контент. При этом требуется сброс введенных данных клиентом.
206 Partial Content Часть контента
Сервер успешно обработал только часть запроса.

3xx: Перенаправление

Статус кода Сообщение Описание
300 Multiple Choices Выбор из нескольких вариантов
Сервер передаёт с сообщением список из нескольких возможных вариантов перенаправления альтернатив (максимум 5 вариантов). Клиент может выбрать один из них.
301 Moved Permanently Окончательно перемещено
Страница окончательно перемещена на другой URL.
302 Found Найдено /временно перемещено
Запрашиваемая страница была найдена / временно перенесена на другой URL
303 See Other Смотрите другое
Запрашиваемая страница не найдена по другому URL
304 Not Modified Без изменений
Запрашиваемый документ не был изменен с момента последнего запроса
306 Switch Proxy Использовавшийся раньше код ответа, в настоящий момент зарезервирован
307 Temporary Redirect Временный редирект
Запрашиваемый ресурс на короткое время доступен по другому URL.
308 Resume Incomplete Перемещено навсегда / возобновление после прерывания
Запрашиваемая страница была перенесена на новый URL на постоянной основе (редирект 308 сохраняет HTTP метод, в отличии от 301-го, где возможно его изменение), либо предлагается возобновить прерванный PUT или POST запрос

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

Статус кода Сообщение Описание
400 Bad Request Некорректный запрос
Запрос не может быть обработан, поскольку содержит синтаксическую ошибку.
401 Unauthorized Не авторизован
Запрос обрабатывается, но доступ к запрашиваемому ресурсу не предоставляется, поскольку клиент не авторизован
402 Payment Required Не используется
Зарезервирован для использования в будущем.
403 Forbidden Запрещено
Сервер понял запрос, но он не выполняет его из-за ограничений прав доступа к указанному ресурсу
404 Not Found Не найдено
Запрашиваемая страница не найдена. Сервер понял запрос, но не нашёл соответствующего ресурса по указанному URL (Самая распространенная ошибка в Интернете, возникает из-за неправильно указанного URL).
405 Method Not Allowed Mетод не поддерживается
Запрос был сделан методом, который не поддерживается данным ресурсом.
406 Not Acceptable Не принимается
Сервер может сгенерировать только такой ответ, который клиент не принимает. (например, на другом языке).
407 Proxy Authentication Required Требуется аутентификация прокси
Ответ аналогичен коду 401 за исключением того, что аутентификация производится для прокси-сервера
408 Request Timeout Время ожидания истекло
Запрос клиента к серверу занял слишком много времени.
409 Conflict Конфликт
Запрос не может быть обработан по причине конфликта с другим запросом или конфигурацией сервера
410 Gone Недоступен
Доступный по указанному URL раньше был доступен, но был удалён или недоступен.
411 Length Required Нужна длина
Длина контента не определена, и сервер не принимает запрос без этого. Повторный запрос должен содержать заголовок "Content-Length".
412 Precondition Failed Не выполнено предварительное условие
Предварительное условие, указанное в запросе, не было выполнено.
413 Request Entity Too Large Слишком большой запрос
Размер запроса превышает максимальный размер запроса, принимаемого сервером.
414 Request-URI Too Long Слишком длинный URI
Серверу не удается обработать запрос по причине длинного URI. Такая ошибка может возникнуть, когда клиент пытается передать длинные параметры через метод GET, а не POST.
415 Unsupported Media Type Неподдерживаемый формат
Формат не поддерживается, и сервер не может принять запрос.
416 Requested Range Not Satisfiable Недопустимый диапазон
Диапазон байтов, запрошенный клиентом, находится за пределами ресурса
417 Expectation Failed Ожидания не оправдались
Сервер не может удовлетворить требования заголовка Expect, так как поле заголовка не соответствует ожиданиям.

5xx: Ошибки сервера

Статус кода Сообщение Описание
500 Internal Server Error Внутренняя ошибка сервера
Любая внутренняя ошибка сервера, которую сервер не может конкретизировать.
501 Not Implemented Не реализовано
Сервер не распознает указанного в запросе метода и не может обработать запрос.
502 Bad Gateway Ошибка шлюза
Сервер, выступая в роли шлюза или прокси-сервера, получил недействительное ответное сообщение от вышестоящего сервера
503 Service Unavailable Сервис недоступен
Сервер не доступен в данный момент (перегружен, отключен, на техническом обслуживании).
504 Gateway Timeout Время ожидания ответа шлюзом истекло
Сервер, выступая в роли шлюза или прокси-сервера, не получил ответа от вышестоящего сервера в отведенное время.
505 HTTP Version Not Supported Версия HTTP не поддерживается
Версия протокола HTTP, используемая в запросе, не поддерживается сервером
511 Network Authentication Required Требуется аутентификация
Для получения доступа к сети, клиент должен пройти аутентификацию. Ошибка генерируется сервером-посредником, к примеру, сервером интернет-провайдера, если нужно ввести пароль для получения доступа к сети через платную точку доступа.

Практикуйте свои знания

Что из перечисленного ниже является кодами состояния HTTP?
Считаете ли это полезным?