Статус
HTTP коды состояния ответа
HTTP коды состояния ответа указывают, был ли успешно выполнен конкретный запрос HTTP. Ответы сгруппированы в пять классов:
-
Информационные ответы (
100–199) -
Успешные ответы (
200–299) -
Перенаправления (
300–399) -
Ошибки клиента (
400–499) -
Ошибки сервера (
500–599)
Ниже приведены коды состояния, определённые в RFC 9110.
Примечание: Если вы получаете ответ, который не указан в этом списке, это нестандартный ответ, возможно, специфичный для программного обеспечения сервера.
Информационные ответы
100 Continue-
Этот промежуточный ответ указывает, что клиент должен продолжить запрос или проигнорировать ответ, если запрос уже завершён.
101 Switching Protocols-
Этот код отправляется в ответ на заголовок запроса
Upgradeот клиента и указывает протокол, на который переключается сервер. -
102 Processing(WebDAV) -
Этот код указывает, что сервер получил и обрабатывает запрос, но ответ пока недоступен.
103 Early Hints-
Этот код состояния предназначен в первую очередь для использования с заголовком
Link, позволяя пользовательскому агенту начать предварительную загрузку ресурсов, пока сервер готовит ответ.
Успешные ответы
200 OK-
Запрос успешно выполнен. Значение "успеха" зависит от метода HTTP:
-
GET: Ресурс был получен и передан в теле сообщения. -
HEAD: Заголовки представления включены в ответ без тела сообщения. -
PUTилиPOST: Ресурс, описывающий результат действия, передан в теле сообщения. -
TRACE: Тело сообщения содержит запрос, полученный сервером.
-
201 Created-
Запрос выполнен успешно, и в результате был создан новый ресурс. Обычно это ответ, отправленный после запросов
POSTили некоторых запросовPUT. 202 Accepted-
Запрос принят, но ещё не обработан. Это неявное подтверждение, так как в HTTP нет способа позже отправить асинхронный ответ, указывающий результат запроса. Предполагается для случаев, когда запрос обрабатывает другой процесс или сервер, или для пакетной обработки.
-
Этот код ответа означает, что возвращаемые метаданные не совсем идентичны тем, что доступны от исходного сервера, но собраны с локальной или сторонней копии. В основном используется для зеркал или резервных копий другого ресурса. За исключением этого конкретного случая, предпочтительнее ответ
200 OK. 204 No Content-
Для этого запроса нет контента для отправки, но заголовки могут быть полезны. Пользовательский агент может обновить кэшированные заголовки для этого ресурса с новыми.
205 Reset Content-
Указывает пользовательскому агенту сбросить документ, который отправил этот запрос.
206 Partial Content-
Этот код ответа используется, когда клиент отправляет заголовок
Range, чтобы запросить только часть ресурса. -
207 Multi-Status(WebDAV) -
Передает информацию о нескольких ресурсах, для ситуаций, когда может быть уместно несколько кодов состояния.
-
208 Already Reported(WebDAV) -
Используется внутри элемента ответа
<dav:propstat>для предотвращения повторного перечисления внутренних членов нескольких связей с одним и тем же набором. -
226 IM Used(HTTP Delta encoding) -
Сервер выполнил запрос
GETдля ресурса, и ответ представляет собой результат одного или нескольких манипуляций с экземпляром, применённых к текущему экземпляру.
Перенаправления
300 Multiple Choices-
Запрос имеет более одного возможного ответа. Пользовательский агент или пользователь должен выбрать один из них. (Нет стандартного способа выбора одного из ответов, но рекомендуется использовать HTML-ссылки на варианты, чтобы пользователь мог выбрать.)
301 Moved Permanently-
URL запрошенного ресурса был изменён постоянно. Новый URL указан в ответе.
302 Found-
Этот код ответа означает, что URI запрошенного ресурса изменён временнно. В будущем могут быть произведены дальнейшие изменения в URI. Поэтому этот же URI должен использоваться клиентом в будущих запросах.
303 See Other-
Сервер отправил этот ответ, чтобы направить клиента к получению запрошенного ресурса по другому URI с помощью запроса GET.
304 Not Modified-
Используется для кэширования. Указывает клиенту, что ответ не был изменён, поэтому клиент может продолжить использовать ту же кэшированную версию ответа.
-
305 Use ProxyУстарел -
Определён в предыдущей версии спецификации HTTP для указания того, что к запрошенному ответу необходимо получить доступ через прокси. Он устарел из-за проблем с безопасностью, связанных с конфигурацией прокси в режиме реального времени.
306 unused-
Этот код ответа больше не используется; он просто зарезервирован. Он использовался в предыдущей версии спецификации HTTP/1.1.
307 Temporary Redirect-
Сервер отправляет этот ответ, чтобы направить клиента к получению запрошенного ресурса по другому URI с тем же методом, что использовался в предыдущем запросе. Этот ответ имеет те же семантические значения, что и код ответа
302 FoundHTTP, за исключением того, что пользовательский агент не должен изменять используемый HTTP-метод: если в первом запросе был использованPOST, то во втором запросе должен быть использованPOST. 308 Permanent Redirect-
Это означает, что ресурс теперь постоянно находится по другому URI, указанному в заголовке ответа HTTP
Location:. Это имеет те же семантические значения, что и код ответа301 Moved PermanentlyHTTP, за исключением того, что пользовательский агент не должен изменять используемый HTTP-метод: если в первом запросе был использованPOST, то во втором запросе должен быть использованPOST.
Ответы клиента с ошибками
400 Bad Request-
Сервер не может или не хочет обработать запрос из-за предполагаемой ошибки клиента (например, некорректный синтаксис запроса, невалидная структура сообщения запроса или обманчивое маршрутизирование запроса).
-
Хотя HTTP-стандарт определяет "неавторизованный", семантически этот ответ означает "необоснованный". То есть, клиент должен пройти процедуру аутентификации, чтобы получить запрашиваемый ответ.
-
402 Payment RequiredЭкспериментально -
Этот код ответа зарезервирован для будущего использования. Первоначальная цель создания этого кода заключалась в его применении в системах цифровых платежей, однако этот код статуса используется очень редко, и нет стандартной конвенции.
403 Forbidden-
Клиент не имеет прав доступа к контенту; то есть, он неавторизован, поэтому сервер отказывается предоставить запрашиваемый ресурс. В отличие от
401 Unauthorized, идентичность клиента известна серверу. 404 Not Found-
Сервер не может найти запрашиваемый ресурс. В браузере это означает, что URL не распознан. В API это также может означать, что конечная точка валидна, но сам ресурс не существует. Серверы также могут отправлять этот ответ вместо
403 Forbidden, чтобы скрыть существование ресурса от неавторизованного клиента. Этот код ответа, вероятно, наиболее известен из-за его частой встречаемости в сети. 405 Method Not Allowed-
Метод запроса известен серверу, но не поддерживается целевым ресурсом. Например, API может не допускать вызова
DELETEдля удаления ресурса. 406 Not Acceptable-
Этот ответ отправляется, когда веб-сервер, выполнив переговоры о содержимом, управляемые сервером, не находит никакого контента, соответствующего критериям, заданным агентом пользователя.
407 Proxy Authentication Required-
Это аналогично
401 Unauthorized, но аутентификация требуется через прокси. 408 Request Timeout-
Некоторые серверы отправляют этот ответ по неактивному соединению даже без предварительного запроса клиента. Это означает, что сервер хочет закрыть это неиспользуемое соединение. Этот ответ используется гораздо чаще, так как некоторые браузеры, такие как Chrome, Firefox 27+, или IE9, используют механизмы предварительного подключения HTTP для ускорения серфинга. Также обратите внимание, что некоторые серверы просто закрывают соединение без отправки этого сообщения.
409 Conflict-
Этот ответ отправляется, когда запрос противоречит текущему состоянию сервера.
410 Gone-
Этот ответ отправляется, когда запрашиваемый контент был постоянно удален с сервера, без указания адреса перенаправления. Клиенты должны удалить свои кэши и ссылки на ресурс. HTTP-спецификация предполагает, что этот код статуса используется для «услуг ограниченного срока, рекламных услуг». API не должны чувствовать себя обязанными указывать удаленные ресурсы с помощью этого кода статуса.
411 Length Required-
Сервер отклонил запрос, потому что поле заголовка
Content-Lengthне определено, а сервер его требует. 412 Precondition Failed-
Клиент указал предварительные условия в своих заголовках, которые сервер не выполняет.
413 Payload Too Large-
Сущность запроса больше, чем пределы, определенные сервером. Сервер может закрыть соединение или вернуть поле заголовка
Retry-After. 414 URI Too Long-
Запрашиваемый URI клиента длиннее, чем сервер готов интерпретировать.
415 Unsupported Media Type-
Формат данных, запрошенных клиентом, не поддерживается сервером, поэтому сервер отклоняет запрос.
416 Range Not Satisfiable-
Диапазон, указанный в поле заголовка
Rangeзапроса, не может быть выполнен. Возможно, диапазон выходит за пределы размера данных целевого URI. 417 Expectation Failed-
Этот код ответа означает, что ожидание, указанное в поле заголовка запроса
Expect, не может быть выполнено сервером. 418 I'm a teapot-
Сервер отказывается пытаться сварить кофе с чайником.
421 Misdirected Request-
Запрос был направлен на сервер, который не может сгенерировать ответ. Это может быть отправлено сервером, который не настроен на генерацию ответов для сочетания схемы и авторитета, которые включены в URI запроса.
-
422 Unprocessable Entity(WebDAV) -
Запрос был правильно составлен, но не смог быть выполнен из-за семантических ошибок.
-
423 Locked(WebDAV) -
Доступный ресурс заблокирован.
-
424 Failed Dependency(WebDAV) -
Запрос завершился неудачей из-за сбоя предыдущего запроса.
-
425 Too EarlyЭкспериментально -
Указывает, что сервер не хочет рисковать обработкой запроса, который может быть повторен.
426 Upgrade Required-
Сервер отказывается выполнять запрос с использованием текущего протокола, но может быть готов сделать это после того, как клиент обновит протокол. Сервер отправляет заголовок
Upgradeв ответе 426, чтобы указать требуемый(е) протокол(ы). 428 Precondition Required-
Исходный сервер требует, чтобы запрос был условным. Этот ответ призван предотвратить проблему «потерянного обновления», когда клиент
GETсостояние ресурса, изменяет его иPUTего обратно на сервер, когда тем временем третья сторона изменила состояние на сервере, что приводит к конфликту. 429 Too Many Requests-
Пользователь отправил слишком много запросов за определенное время («ограничение скорости»).
431 Request Header Fields Too Large-
Сервер не желает обрабатывать запрос, потому что его поля заголовка слишком велики. Запрос можно повторить после уменьшения размера полей заголовка запроса.
-
Агент пользователя запросил ресурс, который по закону предоставить нельзя, например, веб-страницу, подверженную цензуре правительства.
Ответы сервера с ошибками
500 Internal Server Error-
Сервер столкнулся с ситуацией, с которой не знает, как справиться.
501 Not Implemented-
Метод запроса не поддерживается сервером и не может быть обработан. Единственные методы, которые серверы обязаны поддерживать (и поэтому не должны возвращать этот код), это
GETиHEAD. 502 Bad Gateway-
Этот код ошибки означает, что сервер, работая в качестве шлюза для получения ответа, необходимого для обработки запроса, получил недействительный ответ.
-
Сервер не готов обработать запрос. Распространённые причины: сервер находится в режиме технического обслуживания или перегружен. Обратите внимание, что вместе с этим ответом должен быть отправлен понятный пользователю веб-страницы с объяснением проблемы. Этот ответ должен использоваться для временных ситуаций, а заголовок
Retry-AfterHTTP, по возможности, должен содержать приблизительное время восстановления сервиса. Веб-мастер также должен позаботиться о заголовках, связанных с кэшированием, которые отправляются вместе с этим ответом, так как эти ответы для временных ситуаций обычно не должны кэшироваться. 504 Gateway Timeout-
Этот ответ об ошибке выдаётся, когда сервер действует как шлюз и не может получить ответ вовремя.
505 HTTP Version Not Supported-
Используемая в запросе версия HTTP не поддерживается сервером.
506 Variant Also Negotiates-
На сервере внутренняя ошибка конфигурации: выбранный ресурс-вариант настроен на самостоятельное участие в прозрачном согласовании содержимого и, следовательно, не является надлежащей конечной точкой в процессе согласования.
-
507 Insufficient Storage(WebDAV) -
Метод не может быть выполнен с ресурсом, так как сервер не может сохранить представление, необходимое для успешного выполнения запроса.
-
508 Loop Detected(WebDAV) -
Сервер обнаружил бесконечную петлю при обработке запроса.
510 Not Extended-
Для выполнения запроса сервером требуются дополнительные расширения.
511 Network Authentication Required-
Указывает, что клиенту необходимо пройти аутентификацию для получения доступа к сети.
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | |
100 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
103 |
103 |
Нет |
Нет |
Нет |
Нет |
Нет |
? |
103 |
? |
? |
? |
? |
200 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
201 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
204 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
206 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
301 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
302 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
303 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
304 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
307 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
308 |
36 |
12 |
14 |
11
Не работает ниже Windows 10.
|
24 |
7 |
37 |
36 |
14 |
24 |
7 |
3.0 |
401 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
403 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
404 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
406 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
407 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
409 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
410 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
412 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
416 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
418 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
425 |
Нет |
Нет |
58 |
Нет |
Нет |
Нет |
Нет |
Нет |
58 |
Нет |
Нет |
Нет |
451 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
500 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
501 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
502 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
503 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
504 |
Да |
12 |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
Да |
См. также
© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status