Spec-Zone.ru › HTTP

Статус

Коды состояния HTTP-ответа

Коды состояния HTTP-ответа показывают, был ли успешно выполнен конкретный запрос HTTP. Ответы делятся на пять классов:

  1. Информационные ответы (100 – 199)
  2. Успешные ответы (200 – 299)
  3. Сообщения перенаправления (300 – 399)
  4. Ответы с ошибкой клиента (400 – 499)
  5. Ответы с ошибкой сервера (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 нет способа позднее отправить асинхронный ответ с результатом выполнения запроса. Он предназначен для случаев, когда запрос обрабатывает другой процесс или сервер, а также для пакетной обработки.

203 Non-Authoritative Information

Этот код ответа означает, что возвращённые метаданные не полностью совпадают с данными на исходном сервере, а получены из локальной или сторонней копии. Чаще всего он используется для зеркал или резервных копий другого ресурса. За исключением этого конкретного случая, предпочтительнее использовать ответ 200 OK.

204 No Content

В ответ на этот запрос не нужно отправлять содержимое, однако заголовки полезны. Пользовательский агент может обновить заголовки этого ресурса в кэше, заменив их новыми.

205 Reset Content

Указывает пользовательскому агенту сбросить документ, из которого был отправлен этот запрос.

206 Partial Content

Этот код ответа используется в ответ на запрос диапазона, когда клиент запрашивает часть или части ресурса.

207 Multi-Status (WebDAV)

Передаёт сведения о нескольких ресурсах в ситуациях, когда применимы несколько кодов состояния.

208 Already Reported (WebDAV)

Используется внутри элемента ответа <dav:propstat>, чтобы избежать повторного перечисления внутренних элементов нескольких привязок к одной коллекции.

226 IM Used (дельта-кодирование HTTP)

Сервер выполнил запрос GET для ресурса, а ответ представляет собой результат применения одной или нескольких манипуляций с экземпляром к текущему экземпляру.

Сообщения перенаправления

300 Multiple Choices

При согласовании содержимого под управлением агента запрос допускает несколько возможных ответов, и пользовательский агент или пользователь должен выбрать один из них. Стандартного способа автоматически выбрать один из ответов нет, поэтому этот код используется редко.

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 Found, за исключением того, что пользовательский агент не должен менять используемый метод HTTP: если в первом запросе использовался POST, то в перенаправленном запросе также должен использоваться POST.

308 Permanent Redirect

Это означает, что ресурс теперь находится по другому URI на постоянной основе, указанному в заголовке ответа Location. По смыслу этот код аналогичен коду ответа HTTP 301 Moved Permanently, за исключением того, что пользовательский агент не должен менять используемый метод HTTP: если в первом запросе использовался POST, то во втором запросе также должен использоваться POST.

Ответы с ошибкой клиента

400 Bad Request

Сервер не может или не будет обрабатывать запрос из-за ошибки, связанной с клиентом (например, из-за неверного синтаксиса запроса, некорректного формирования сообщения запроса или ошибочной маршрутизации запроса).

401 Unauthorized

Хотя в стандарте HTTP используется термин «неавторизованный», по смыслу этот ответ означает «неаутентифицированный». Иными словами, клиент должен пройти аутентификацию, чтобы получить запрошенный ответ.

402 Payment Required

Изначально этот код предназначался для систем цифровых платежей, однако он используется редко, и общепринятого стандарта для него нет.

403 Forbidden

У клиента нет прав доступа к содержимому; то есть он не авторизован, поэтому сервер отказывает в предоставлении запрошенного ресурса. В отличие от 401 Unauthorized, серверу известна личность клиента.

404 Not Found

Сервер не может найти запрошенный ресурс. В браузере это означает, что URL не распознан. В API это также может означать, что конечная точка существует, но сам ресурс отсутствует. Серверы могут отправлять этот ответ вместо 403 Forbidden, чтобы скрыть существование ресурса от неавторизованного клиента. Этот код ответа, вероятно, наиболее известен из-за частого появления в интернете.

405 Method Not Allowed

Метод запроса известен серверу, но не поддерживается целевым ресурсом. Например, API может не разрешать DELETE для ресурса или не поддерживать метод TRACE вообще.

406 Not Acceptable

Этот ответ отправляется, когда веб-сервер после согласования содержимого под управлением сервера не находит содержимого, соответствующего критериям пользовательского агента.

407 Proxy Authentication Required

Этот код похож на 401 Unauthorized, но аутентификацию необходимо пройти на прокси-сервере.

408 Request Timeout

Некоторые серверы отправляют этот ответ при простое соединения, даже если клиент ранее не отправлял запросов. Он означает, что сервер хочет закрыть неиспользуемое соединение. Этот ответ используется чаще, поскольку некоторые браузеры применяют механизмы предварительного подключения HTTP для ускорения просмотра страниц. Некоторые серверы могут закрыть соединение, не отправляя это сообщение.

409 Conflict

Этот ответ отправляется, когда запрос конфликтует с текущим состоянием сервера. При удалённом веб-редактировании с помощью WebDAV ответы 409 представляют собой ошибки, отправляемые клиенту, чтобы пользователь мог устранить конфликт и повторно отправить запрос.

410 Gone

Этот ответ отправляется, когда запрошенное содержимое было навсегда удалено с сервера и адрес для перенаправления отсутствует. Ожидается, что клиенты удалят свои кэши и ссылки на ресурс. Согласно спецификации HTTP, этот код состояния предназначен для «услуг с ограниченным сроком действия, например рекламных». API не обязаны сообщать об удалённых ресурсах с помощью этого кода состояния.

411 Length Required

Сервер отклонил запрос, поскольку поле заголовка Content-Length не задано, а сервер требует его наличия.

412 Precondition Failed

В условных запросах клиент указал в заголовках предварительные условия, которым сервер не соответствует.

413 Content Too Large

Тело запроса превышает ограничения, установленные сервером. Сервер может закрыть соединение или вернуть поле заголовка Retry-After.

414 URI Too Long

URI, запрошенный клиентом, длиннее, чем сервер готов обработать.

415 Unsupported Media Type

Формат запрошенных данных не поддерживается сервером, поэтому сервер отклоняет запрос.

416 Range Not Satisfiable

Диапазоны, указанные в поле заголовка Range запроса, не могут быть обработаны. Возможно, диапазон выходит за пределы размера данных целевого ресурса.

417 Expectation Failed

Этот код ответа означает, что сервер не может выполнить ожидание, указанное в поле заголовка запроса Expect.

418 I'm a teapot

Сервер отказывается заваривать кофе в чайнике.

421 Misdirected Request

Запрос был направлен серверу, который не может сформировать ответ. Такой ответ может отправить сервер, не настроенный для обработки запросов с указанным в URI запроса сочетанием схемы и полномочий.

422 Unprocessable Content (WebDAV)

Запрос составлен правильно, но не может быть выполнен из-за семантических ошибок.

423 Locked (WebDAV)

Доступ к ресурсу заблокирован.

424 Failed Dependency (WebDAV)

Запрос не выполнен из-за сбоя предыдущего запроса.

425 Too Early

Указывает, что сервер не хочет рисковать обработкой запроса, который может быть воспроизведён повторно.

426 Upgrade Required

Сервер отказывается выполнять запрос с использованием текущего протокола, но может согласиться сделать это после перехода клиента на другой протокол. В ответе 426 сервер отправляет заголовок Upgrade, указывающий требуемые протоколы.

428 Precondition Required

Исходный сервер требует, чтобы запрос был условным. Этот ответ предназначен для предотвращения проблемы «потерянного обновления»: клиент получает GET состояние ресурса, изменяет его и отправляет обратно на сервер с помощью PUT, а тем временем третья сторона изменяет состояние на сервере, что приводит к конфликту.

429 Too Many Requests

Пользователь отправил слишком много запросов за определённый промежуток времени (ограничение частоты запросов).

431 Request Header Fields Too Large

Сервер отказывается обрабатывать запрос, поскольку его поля заголовка слишком велики. Запрос можно отправить повторно, предварительно уменьшив размер полей заголовка.

451 Unavailable For Legal Reasons

Пользовательский агент запросил ресурс, предоставление которого запрещено законом, например веб-страницу, подвергнутую цензуре правительства.

Ответы с ошибкой сервера

500 Internal Server Error

На сервере возникла ситуация, которую он не знает, как обработать. Эта общая ошибка указывает, что сервер не может найти более подходящий код состояния 5XX для ответа.

501 Not Implemented

Метод запроса не поддерживается сервером и не может быть обработан. Единственные методы, поддержку которых серверы обязаны обеспечивать (и поэтому не должны возвращать этот код), — это GET и HEAD.

502 Bad Gateway

Этот ответ с ошибкой означает, что сервер, работая в качестве шлюза для получения ответа, необходимого для обработки запроса, получил недопустимый ответ.

503 Service Unavailable

Сервер не готов обработать запрос. Частые причины — техническое обслуживание или перегрузка сервера. Вместе с этим ответом следует отправить удобную для пользователя страницу с объяснением проблемы. Этот ответ следует использовать для временных ситуаций; если возможно, HTTP-заголовок Retry-After должен содержать предполагаемое время восстановления службы. Веб-мастеру также необходимо позаботиться о заголовках, связанных с кэшированием, которые отправляются вместе с этим ответом, поскольку такие ответы о временных сбоях обычно не следует кэшировать.

504 Gateway Timeout

Этот ответ с ошибкой отправляется, когда сервер действует в качестве шлюза и не может своевременно получить ответ.

505 HTTP Version Not Supported

Версия HTTP, используемая в запросе, не поддерживается сервером.

506 Variant Also Negotiates

На сервере произошла внутренняя ошибка конфигурации: при согласовании содержимого выбранный вариант настроен на самостоятельное участие в согласовании, что приводит к циклическим ссылкам при формировании ответов.

507 Insufficient Storage (WebDAV)

Метод не удалось применить к ресурсу, поскольку сервер не может сохранить представление, необходимое для успешного выполнения запроса.

508 Loop Detected (WebDAV)

При обработке запроса сервер обнаружил бесконечный цикл.

510 Not Extended

Запрос клиента объявляет расширение HTTP (RFC 2774), которое следует использовать для обработки запроса, но это расширение не поддерживается.

511 Network Authentication Required

Указывает, что клиенту необходимо пройти аутентификацию для получения доступа к сети.

Совместимость с браузерами

Настольные Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari для iOS Samsung Internet WebView Android WebView для iOS
103
103Поддерживается только в HTTP/2 и более поздних версиях.
103Поддерживается только в HTTP/2 и более поздних версиях.
120
89Поддерживается только в HTTP/2 и более поздних версиях.
17Поддерживается только в HTTP/2 и более поздних версиях.
103Поддерживается только в HTTP/2 и более поздних версиях.
120
71Поддерживается только в HTTP/2 и более поздних версиях.
17Поддерживается только в HTTP/2 и более поздних версиях.
20.0Поддерживается только в HTTP/2 и более поздних версиях.
103Поддерживается только в HTTP/2 и более поздних версиях.
17Поддерживается только в HTTP/2 и более поздних версиях.
308 36 12 14 24 7 36 14 24 7 3.0 37 7
425 Нет Нет 58 Нет Нет Нет 58 Нет Нет Нет Нет Нет

См. также

  • Список кодов состояния HTTP в Википедии
  • Официальный реестр кодов состояния HTTP IANA

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API