Стандартный ответ на успешные HTTP-запросы. Фактический ответ будет зависеть от используемого метода запроса. В запросе GET ответ будет содержать объект, соответствующий запрошенному ресурсу. В запросе POST ответ будет содержать объект, описывающий или содержащий результат действия.
Запрос принят в обработку, но обработка не завершена. В конечном итоге запрос может быть обработан, а может и не быть обработан, и может быть запрещен при обработке.
203 Неавторитетная информация (начиная с HTTP/1.1)
204 Нет содержания
Сервер успешно обработал запрос и не возвращает никакого контента.
205 Сбросить содержимое
Сервер успешно обработал запрос, просит запрашивающую сторону сбросить представление документа и не возвращает никакого контента.
206 Частичное содержимое
Сервер доставляет только часть ресурса (обслуживание байтов) из-за заголовка диапазона, отправленного клиентом. Заголовок диапазона используется HTTP-клиентами для возобновления прерванной загрузки или разделения загрузки на несколько одновременных потоков.
207 с несколькими статусами (WebDAV; RFC 4918)
208 уже сообщалось (WebDAV; RFC 5842)
Члены привязки DAV уже были перечислены в предыдущей части (мультистатусного) ответа и больше не включаются.
226 IM Используется (RFC 3229)
300 вариантов выбора
Указывает на несколько вариантов ресурса, из которых клиент может выбирать (посредством согласования контента под управлением агента). Например, этот код можно использовать для представления нескольких вариантов формата видео, для перечисления файлов с разными расширениями имен файлов или для устранения неоднозначности в смысле слова.
301 Переехали навсегда
Этот и все будущие запросы должны быть направлены на данный URI.
Найдено 302 (ранее «Временно перемещено»)
303 См. прочее (начиная с HTTP/1.1)
Ответ на запрос можно найти по другому URI с помощью метода GET. При получении в ответ на POST (или PUT/DELETE) клиент должен предположить, что сервер получил данные, и должен выдать новый запрос GET к данному URI.
304 Не Модифицировано
Указывает, что ресурс не был изменен с момента версии, указанной в заголовках запроса If-Modified-Since или If-None-Match. В таком случае нет необходимости повторно передавать ресурс, поскольку у клиента все еще есть ранее загруженная копия.
305 Использовать прокси (начиная с HTTP/1.1)
Запрошенный ресурс доступен только через прокси, адрес которого указан в ответе. По соображениям безопасности многие HTTP-клиенты (например, Mozilla Firefox и Internet Explorer) не подчиняются этому коду состояния.
306 Сменить прокси
Больше не используется. Первоначально означало «Последующие запросы должны использовать указанный прокси».
307 Временное перенаправление (начиная с HTTP/1.1)
В этом случае запрос следует повторить с другим URI; однако будущие запросы по-прежнему должны использовать исходный URI. В отличие от того, как исторически был реализован 302, метод запроса не может быть изменен при повторной отправке исходного запроса. Например, запрос POST должен быть повторен с использованием другого запроса POST.
308 Постоянное перенаправление
Этот и все будущие запросы должны быть направлены на данный URI. 308 аналогичен поведению 301, но не позволяет изменять метод HTTP. Так, например, отправка формы на постоянно перенаправляемый ресурс может продолжаться гладко.
В этом классе выделены коды, информирующие о процессе передачи. При работе через протокол версии 1.0 сообщения с такими кодами должны закрываться. В версии 1.1 клиент должен быть готов принять этот класс сообщений как обычный ответ, но серверу отправлять что-либо не нужно. Сами сообщения от сервера содержат только начальный текст текста и, если необходимо, несколько заголовков полей, специфичных для ответа. Прокси-серверы подобных сообщений должны отправляться дальше с сервера на клиент.
Сообщения данного класса информируют о случаях получения и обработки запроса клиента.
В зависимости от последствий сервер может дополнительно передавать заголовки и телесообщения.
Коды этого класса сообщают клиенту, что для получения выгоды от выполнения операции необходимо сделать другой запрос, как правило, по URI раунда. Из этих классов пять кодов 301, 302, 303, 305 и 307 относятся непосредственно к перенаправлениям. Адрес, по которому следует запрос, следует, сервер указывает в заголовке Местоположение. По этому правилу используются фрагменты в целевом URI.
Поведение клиентов при различных перенаправлениях описано в таблице:
Класс кодов 4xx предназначен для указания ошибок со стороны клиента. При использовании всех методов, кроме HEAD, сервер должен вернуть в теле сообщения гипертекстовое пояснение для пользователя.
Сервер вернул ошибку 403 при попытке просмотра каталога «cgi-bin», доступ к которому был запрещён
Пример ошибки 502 Bad Gateway
Коды 5xx выделены под случаи необработанных исключений при выполнении операций на стороне сервера. Для всех ситуаций, кроме использования метода HEAD, сервер должен включать в тело сообщения объяснение, которое клиент отобразит пользователю.
Caching warning codes (obsoleted)
110 Response is Stale
The response provided by a cache is stale (the content’s age exceeds a maximum age set by a Cache-Control header or heuristically chosen lifetime).
111 Revalidation Failed
The cache was unable to validate the response, due to an inability to reach the origin server.
112 Disconnected Operation
The cache is intentionally disconnected from the rest of the network.
113 Heuristic Expiration
The cache heuristically chose a freshness lifetime greater than 24 hours and the response’s age is greater than 24 hours.
199 Miscellaneous Warning
214 Transformation Applied
Added by a proxy if it applies any transformation to the representation, such as changing the content encoding, media type or the like.
299 Miscellaneous Persistent Warning
Same as 199, but indicating a persistent warning.
Ниже представлен обзорный список всех описанных в данной статье кодов ответа:
Диаграмма принятия веб-сервером решений на основе заголовков
Статистика по кодам ответа, сгенерированная анализатором логов Webalizer
218 This is fine (Apache HTTP Server)
419 Page Expired (Laravel Framework)
420 Method Failure (Spring Framework)
430 Request Header Fields Too Large (Shopify)
498 Invalid Token (Esri)
499 Token Required (Esri)
509 Bandwidth Limit Exceeded (Apache Web Server/cPanel)
529 Site is overloaded
530 Site is frozen
598 (Informal convention) Network read timeout error
599 Network Connect Timeout Error
An error used by some HTTP proxies to signal a network connect timeout behind the proxy to a client in front of the proxy.
Internet Information Services
Microsoft’s Internet Information Services (IIS) web server expands the 4xx error space to signal errors with the client’s request.
440 Login Time-out
449 Retry With
444 No Response
494 Request header too large
Client sent too large request or too long header line.
495 SSL Certificate Error
An expansion of the 400 Bad Request response code, used when the client has provided an invalid client certificate.
496 SSL Certificate Required
An expansion of the 400 Bad Request response code, used when a client certificate is required but not provided.
497 HTTP Request Sent to HTTPS Port
An expansion of the 400 Bad Request response code, used when the client has made a HTTP request to a port listening for HTTPS requests.
499 Client Closed Request
520 Web Server Returned an Unknown Error
521 Web Server Is Down
523 Origin Is Unreachable
524 A Timeout Occurred
525 SSL Handshake Failed
526 Invalid SSL Certificate
527 Railgun Error
AWS Elastic Load Balancing
Основные документы по протоколу HTTP (по убыванию даты публикации)
Документы по расширениям и обновлениям протокола HTTP (по убыванию даты публикации)
1xx informational response
101 Switching Protocols
The requester has asked the server to switch protocols and the server has agreed to do so.
102 Processing (WebDAV; RFC 2518)
103 Early Hints (RFC 8297)
404 error on Wikimedia
The server cannot or will not process the request due to an apparent client error (e.g., malformed request syntax, size too large, invalid request message framing, or deceptive request routing).
402 Требуется оплата
404 Не найдено
Запрошенный ресурс не найден, но может быть доступен в будущем. Последующие запросы клиента допустимы.
405 Метод не разрешен
Метод запроса не поддерживается для запрошенного ресурса; например, запрос GET к форме, которая требует представления данных через POST, или запрос PUT к ресурсу, доступному только для чтения.
406 Неприемлемо
Запрошенный ресурс способен генерировать только контент, недопустимый согласно заголовкам Accept, отправленным в запросе. См. Согласование контента.
407 Требуется аутентификация прокси
Клиент должен сначала аутентифицировать себя с помощью прокси.
408 Таймаут запроса
На сервере истекло время ожидания запроса. Согласно спецификациям HTTP: «Клиент не выдал запрос в течение времени, пока сервер был готов ждать. Клиент МОЖЕТ повторить запрос без изменений в любое время позже».
Указывает, что запрос не удалось обработать из-за конфликта текущего состояния ресурса, например конфликта редактирования между несколькими одновременными обновлениями.
Указывает, что запрошенный ресурс ранее использовался, но больше не доступен и не будет доступен снова. Это следует использовать, когда ресурс был намеренно удален и ресурс необходимо очистить. Получив код состояния 410, клиент не должен запрашивать ресурс в будущем. Клиентам, таким как поисковые системы, следует удалить ресурс из своих индексов. В большинстве случаев использования клиенты и поисковые системы не требуют очистки ресурса, вместо этого можно использовать код «404 Not Found».
Требуемая длина 411
В запросе не указана длина его контента, необходимая для запрашиваемого ресурса.
412 Предварительное условие не выполнено
Сервер не отвечает ни одному из предварительных условий, которые запрашивающая сторона поставила в поля заголовка запроса.
413 Полезная нагрузка слишком велика
414 Слишком длинный URI
415 Неподдерживаемый тип носителя
Объект запроса имеет тип носителя, который не поддерживается сервером или ресурсом. Например, клиент загружает изображение в формате image/svg+xml, но сервер требует, чтобы изображения использовали другой формат.
416 Диапазон неудовлетворителен
417 Ожидание не оправдалось
418 Я чайник (RFC 2324, RFC 7168)
421 Неверно направленный запрос
Запрос был направлен на сервер, который не может дать ответ (например, из-за повторного использования соединения).
422 Необработанный контент
423 Заблокировано (WebDAV; RFC 4918)
424 Неудачная зависимость (WebDAV; RFC 4918)
425 Слишком рано (RFC 8470)
Указывает, что сервер не желает рисковать обработкой запроса, который может быть воспроизведен.
426 Требуется обновление
Клиенту следует переключиться на другой протокол, например TLS/1.3, указанный в поле заголовка «Обновление».
428 Требуется предварительное условие (RFC 6585)
429 Слишком много запросов (RFC 6585)
431 Слишком большие поля заголовка запроса (RFC 6585)
451 Недоступно по юридическим причинам (RFC 7725)
Что делать посетителю сайта при возникновении ошибки 504
Итак, вы столкнулись с появлением на экране сообщения «ошибка 504». Не спешите уходить с сайта, потому что опасения могут говорить о неправильной работе вашего браузера или даже о более серьезных проблемах на уровне пользовательского программного обеспечения. Далее следует выполнить довольно простые действия, чтобы убедиться, что с вашим программным обеспечением и настройками все в порядке.
Если после проведения всех вышеозначенных рекомендаций возникнет ошибка, в т.ч. 504 Gateway Time Out, продолжает возникать регулярно, обращайтесь в техподдержку проблемного интернет-ресурса.
Комьюнити теперь в Telegram
Подпишитесь и будьте в курсе последних IT-новостей
Как исправить ошибку 504 пользователю
Откройте проблемную страницу в другом браузере. Если причина сбоя в некорректных функциях наблюдателя, этот способ позволит устранить такую ошибку.
Очистка DNS
Очистите кэш DNS в используемой операционной системе:
Очистка сопоставителя DNS в Windows 10
Другие способы
Если очистка DNS-кэша не помогла, попробуйте выполнить следующие действия
В Google Chrome удалить файлы cookie и другие данные сайта, можно в разделе Конфиденциальность и безопасность
Ошибки со стороны клиента (4xx)
Для начала перечислим коды ошибок на стороне клиента. Вина за их появление ложится на плечи обоих участников соединения.
400 Bad Request
Такой ответ от браузера можно получить в том случае, если сервер не смог правильно отреагировать на запрос со стороны пользователя. Часто код 400 возникает при попытке клиента получить доступ к серверу без соблюдения правил оформления синтаксиса протокола передачи гипертекста (HTTP). Повторный запрос не стоит отправлять до тех пор, пока не будет исправлена ошибка (или несколько из них).
401 Unauthorized
Эта ошибка сообщает клиенту о том, что для успешного выполнения запроса ему необходимо оплатить доступ к серверу. Изначально код 402 должен был стать неким стандартом для цифровой валюты и оплаты контента в сети. Но не срослось. До сих пор нет единого решения по поводу того, как должны выглядеть платежи в сети. Также нет и единого решения по поводу того, как стоит использовать 402.
Все еще считается, что код существует с расчетом на будущее. Сейчас почти не используется и поддерживается не всеми браузерами.
403 Forbidden
Творчество на тему знаменитой киносаги
404 Not Found
Легендарная ошибка, ставшая популярным мемом. 404 оповещает клиента о том, что его запрос ведет в никуда. Код возникает, когда пользователь пытается попасть на страницу, которой не существует. Например, когда случайно ошибается при вводе ссылки и вводит ее с опечаткой. Или же пытается получить доступ к странице, которой на сайте уже нет.
В отличие от других кодов, страницу с 404 частенько кастомизируют, создавая для нее уникальный дизайн. Мало того, что это выглядит симпатичнее, так еще и полезнее для посетителей. Можно прямо на странице с ошибкой разъяснить, что произошло и как дальше действовать.

И таких вариаций тысячи. Каждый пытается добавить в оформление что-то свое.
405 Method Not Allowed
405 сообщает клиенту о том, что метод, используемый при запросе, не разрешен. В качестве примера можно привести попытку со стороны клиента ввести данные в форму с помощью GET, когда она работает только с POST. Ну и в таком же духе.
406 Not Acceptable
Ошибка 406 сообщает о том, что страница передает контент, который не может быть распознан клиентом. Возможно, проблема в методе сжатия или в формате страницы. Иногда сюда же приплетают неправильные настройки кодировки.
Этот код редко используют на практике, так как его появления можно избежать, предоставив пользователю информацию на сайте в том виде, который его браузер способен принять. Посетитель сайта по итогу получит не то, что ожидал, но хотя бы не ошибку.
407 Proxy Authentication Required
408 говорит нам о том, что сервер пожелал разорвать соединение с клиентом, потому что оно никак не используется. Происходит это в том случае, если сервер буквально устал ждать, пока наладится соединение с ним. Поэтому такую ошибку часто можно лицезреть после очень долгой и безуспешной загрузки какого-нибудь сайта.
Многие серверы не отправляют никаких сообщений, а просто прерывают соединение по той же причине. На запрос уходит больше времени, чем на то полагается.

В Мистере Роботе частенько называли серии в честь ошибок HTTP (весь четвертый сезон в нумерации 4хх). В честь 408, например, назвали восьмую серию четвертого сезона
409 Conflict
Сообщение о конфликте возникает, когда запрос со стороны клиента не соответствует тому, чего ожидает сервер. В качестве примера приводят проблемы при проверки версий, когда пользователь пытается с помощью метода PUT загрузить на сервер новый файл, но там уже имеется более новая версия того же файла. Конфликта версий можно легко избежать, загрузив корректную версию.
410 Gone
Своего рода аналог 404. Разница лишь в том, что 410 намекает на перманентность отсутствия страницы. Так что этот код стоит использовать, когда на 100% уверен, что страница ушла в небытие (ну или с текущего адреса) навсегда. В любом другом случае есть универсальный 404.
411 Length Required
411 оповещает пользователя о том, что сервер не желает принимать запрос со стороны клиента, потому что в нем не определен заголовок Content-Length. Да, это первый код в подборке, который смогут понять только люди, сведущие в настройке серверов. По-простому уложить сущность HTML-заголовков в этот материал не получится.
412 Precondition Failed
Еще один код, сообщающий о том, что сервер отклонил запрос пользователя и не разрешает доступ к выбранному ресурсу. Проблемы возникают при неправильной настройке работы методов, отличающихся от GET и HEAD.
413 Payload Too Large/Request Entity Too Large
Код 413 говорит нам, что запрос, который посылает клиент на сервер, слишком большой. Поэтому сервер отказывается его обрабатывать и разрывает соединение. Обычно это происходит при попытке загрузить на ресурс какой-то файл, превышающий ограничение, выставленное в настройках сервера. Соответственно, решается проблема изменением настроек сервера.
414 URI Too Long
Чем-то этот код похож на предыдущий. Здесь тоже идет речь о превышение лимита. Только теперь это касается не запроса со стороны клиента, а длины URI. То есть ссылки. Выходит, что адрес, используемый клиентом, больше, чем тот, что может обработать сервер. Как-то так.
Такая ошибка иногда выскакивает при попытке взломать ресурс. Сайт так реагирует на слишком частые попытки воспользоваться потенциальными дырами в безопасности.
415 Unsupported Media Type
Ошибка 415 возникает, когда клиент пытается загрузить на сервер данные в неподходящем формате. В таком случае сервер просто отказывается принимать посылаемые файлы и разрывает соединение. Как и в случае с 413.
416 Range Not Satisfiable
Подобный ответ можно ожидать, если клиент запрашивает у сервера определенные данные, но эти данные на сервере не соответствуют запросу. То есть, грубо говоря, вы просите у сервера какой-то набор данных с заранее заданным размером, а в итоге оказывается, что размер этих данных меньше, чем объем, указанный в запросе. Серверу ничего не остается, кроме как послать вас, ведь он не обучен поведению в таких ситуациях.
417 Expectation Failed
Такая ошибка высвечивается, когда ожидания сервера не совпадают с данными в запросе клиента. Сведения об ожиданиях прописываются в заголовке Expect заранее. Так что можно ознакомиться с ними, чтобы выяснить, как решить названную проблему.
418 I’m a teapot
Код 418 можно увидеть, если сервер откажется варить кофе, потому что он чайник. Это первоапрельская шутка. Естественно, 418 не используется нигде всерьез и просто существует как дань памяти программистам-юмористам, придумавшим это в 1998 году.

У Google получился такой симпатичный чайник
421 Misdirected Request
Появляется когда запрос клиента переправляется на сервер, который не может дать на него адекватный ответ. Например, если запрос был отправлен на ресурс, который вообще не настроен обрабатывать запросы извне.
Чтобы исправить проблему, можно попробовать переподключиться к ресурсу заново или попробовать другое соединение.
422 Unprocessable Entity
Код 422 говорит, что сервер вроде бы принял запрос, понял его, все хорошо, но из-за семантических ошибок корректно обработать не смог. Значит, где-то в запросе затаилась логическая ошибка, мешающая корректному взаимодействию клиента и сервера. Надо ее найти и исправить.
423 Locked
424 сообщает о том, что для выполнения запроса со стороны клиента успешно должна завершиться еще одна или несколько параллельных операций. Если какая-то из них «провалится», то «помрет» все соединение сразу, и обработать запрос до конца не получится. Аналогичное происходит, если некорректно был обработан один из предыдущих запросов.
425 Too Early
Появляется в ответ на запрос, который может быть моментально запущен заново. Сервер не рискует и не берется за его обработку, чтобы не подставиться под так называемую «атаку повторного воспроизведения».
426 Upgrade Required
Тут нам прямо сообщают, что сервер не желает с нами общаться, пока мы не перейдем на более современный протокол. Наткнуться на такую ошибку очень тяжело, но в случае появления, скорее всего, будет достаточно установить браузер посвежее.
428 Precondition Required
428 выскакивает, если пользователь отправляет запрос на сервер, но получает некорректные или неактуальные данные. Так ресурс оповещает о необходимости внести в запрос информацию о предварительных условиях обработки данных. Только так он сможет гарантировать получение клиентом нужной информации.
429 Too Many Requests
Здесь все просто. Ошибка появляется, когда клиент отправляет на сервер слишком много запросов в короткий промежуток времени. Очень похоже на поведение взломщиков. По этой причине запрос моментально блокируется.

431 Request Header Fields Too Large
Из названия понятно, что ошибка с кодом 431 появляется из-за того, что в запросе клиента используются слишком длинные заголовки (неважно, один или несколько из них). Исправляется это с помощью сокращения заголовков и повторной отправки запроса. В теле ошибки обычно отображается краткая информация о том, как пользователь может решить эту проблему самостоятельно.
444 No Response
Этот код вам вряд ли удастся увидеть. Он отображается в лог-файлах, чтобы подтвердить, что сервер никак не отреагировал на запрос пользователя и прервал соединение.
449 Retry With
Код используется в расширениях компании Microsoft. Он сигнализирует о том, что запрос от клиента не может быть принят сервером. Причиной становятся неверно указанные параметры. Сама 449 ошибка говорит о необходимости скорректировать запрос и повторить его снова, подготовив к работе с сервером.
450 Blocked by Windows Parental Controls
450 код увидят дети, попавшие под действие системы «Родительский контроль» компании Microsoft. По сути, ошибка говорит о том, что с компьютера попытались зайти на заблокированный ресурс. Избежать этой ошибки можно изменением параметров родительского контроля.
451 Unavailable For Legal Reasons
Этот код сообщает клиенту, что он не может попасть на запрашиваемый ресурс из юридических соображений. Скорее всего, доступ был заблокирован из-за каких-нибудь государственных санкций, нового законодательства или цензуры со стороны властей. В общем, все вопросы к государству и провайдеру связи.
![]()
