HTTP-статусы

Расшифровка кодов 200, 301, 404, 500 и других.

Код ответа HTTP — это трёхзначное число, которым сервер отвечает на каждый запрос: браузера, поисковика или системы мониторинга. По нему видно, отдал ли сайт страницу, перенаправил ли посетителя или ответил ошибкой. Ниже — полная таблица кодов, которые Tracker.ru встречает при проверках реальных сайтов: от служебных 1xx до ошибок Cloudflare из диапазона 5xx.

Правило мониторинга простое: успешной считается только проверка с кодом класса 2xx. Любой другой ответ — от редиректа 301, который не смог разрешиться, до ошибки 500 — помечает сайт недоступным и запускает уведомления. Если проверка падает вовсе без HTTP-кода, причину ищите в типах ошибок: DNS, SSL, таймаут.

Узнать код ответа своего сайта прямо сейчас можно на странице онлайн-проверки — без регистрации. А чтобы не проверять руками, добавьте сайт на мониторинг.

1xx — информационные

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

Код Название Что означает
100 Continue Сервер получил заголовки и готов принять тело запроса. Служебный ответ — браузер продолжает отправку, пользователь его не видит.
101 Switching Protocols Сервер соглашается сменить протокол по запросу клиента, например перейти с HTTP на WebSocket. Норма для чатов и живых обновлений.
102 Processing Сервер принял запрос WebDAV и ещё обрабатывает его. Промежуточный ответ, чтобы клиент не оборвал соединение по таймауту.
103 Early Hints Ранние подсказки: сервер заранее сообщает браузеру, какие стили и скрипты подгрузить. Ускоряет отрисовку страницы.

2xx — успешные

Запрос обработан успешно. Только коды этого класса Tracker.ru засчитывает как «сайт доступен».

Код Название Что означает
200 OK Запрос выполнен успешно, страница или данные отданы. Нормальный статус рабочего сайта — именно его ждёт мониторинг.
201 Created Ресурс успешно создан, например запись через форму или API. Типичный ответ на POST-запрос.
202 Accepted Запрос принят, но будет обработан позже. Сервер не гарантирует результат — типично для фоновых задач и очередей.
203 Non-Authoritative Information Ответ успешен, но данные изменены посредником, например прокси. Содержимое может отличаться от оригинала на сервере.
204 No Content Успех без тела ответа: сервер всё сделал, но возвращать нечего. Часто встречается после сохранения настроек через API.
205 Reset Content Успех без тела ответа, а клиенту предлагается сбросить форму или представление документа. На практике встречается редко.
206 Partial Content Отдана только часть файла по запросу диапазона. Норма при докачке файлов и перемотке видео.
207 Multi-Status Ответ WebDAV с несколькими статусами сразу: внутри XML для каждого файла свой результат операции.
208 Already Reported WebDAV: элемент уже был перечислен ранее в этом же ответе и повторно не раскрывается. Защита от дублей при связанных ресурсах.
226 IM Used Сервер отдал не весь ресурс, а только изменения (дельту) по запросу клиента. Экономит трафик, используется редко.

3xx — перенаправления

Ресурс находится по другому адресу. Проверка следует по редиректам автоматически (до 10 переходов); код 3xx в результате означает, что цепочка не разрешилась.

Код Название Что означает
300 Multiple Choices Есть несколько вариантов ресурса, например разные языки. На практике серверы выбирают вариант сами — код почти не используется.
301 Moved Permanently Страница навсегда переехала на новый адрес. Поисковики передают вес новому URL — основной код для склейки доменов и смены структуры.
302 Found Временный редирект: страница доступна по другому адресу, но старый URL остаётся основным для поисковиков.
303 See Other Редирект «смотри другую страницу»: после отправки формы клиента ведут GET-запросом на страницу результата. Защита от повторной отправки формы.
304 Not Modified Страница не изменилась с прошлого визита — браузер берёт копию из кеша. Экономит трафик, хороший знак для скорости сайта.
305 Use Proxy Ресурс нужно запрашивать через указанный прокси. Код устарел и не поддерживается браузерами из-за проблем безопасности.
307 Temporary Redirect Временный редирект с сохранением метода запроса: POST останется POST-ом. Строгая версия кода 302.
308 Permanent Redirect Постоянный редирект с сохранением метода запроса. Как 301, но POST не превратится в GET — важно для API и форм.

4xx — ошибки клиента

Сервер работает, но не может или не хочет обработать запрос: страница не найдена, доступ запрещён, лимиты исчерпаны. Мониторинг считает такие ответы недоступностью.

Код Название Что означает
400 Bad Request Сервер не понял запрос: ошибка синтаксиса, битые заголовки или неверные параметры. Ошибка клиента, но стоит проверить свои формы и API.
401 Unauthorized Требуется авторизация: нет учётных данных или токен неверен. Если код видят обычные посетители — проверьте настройки доступа.
402 Payment Required Зарезервирован под платежи. На практике его отдают API и сервисы при исчерпанном балансе или неоплаченном тарифе.
403 Forbidden Доступ запрещён: сервер понял запрос, но не пускает. Частые причины — права на файлы, запреты в конфигурации, блокировка по IP.
404 Not Found Страница не найдена. Массовые 404 после переезда сайта — сигнал настроить 301-редиректы, иначе потеряете трафик из поиска.
405 Method Not Allowed Метод запроса не поддерживается этим URL, например POST на страницу, принимающую только GET. Проверьте настройки сервера и формы.
406 Not Acceptable Сервер не может отдать ответ в формате, который просит клиент: язык, кодировка или тип содержимого не совпадают.
407 Proxy Authentication Required Нужна авторизация на прокси-сервере между клиентом и сайтом. Встречается в корпоративных сетях.
408 Request Timeout Клиент слишком долго не отправлял запрос, и сервер закрыл соединение. Единичные случаи — норма, массовые — повод проверить сеть.
409 Conflict Конфликт с текущим состоянием ресурса: например, двое одновременно редактируют один объект через API.
410 Gone Страница удалена навсегда, замены нет. В отличие от 404 прямо говорит поисковикам быстрее убрать URL из индекса.
411 Length Required Сервер требует заголовок Content-Length: без указания размера тела запрос не принимается.
412 Precondition Failed Условие из заголовков запроса не выполнено, например ресурс изменился с момента чтения. Защита от перезаписи чужих правок.
413 Content Too Large Тело запроса слишком большое. Обычно упирается в лимит загрузки файлов на сервере — при необходимости увеличьте его в конфигурации.
414 URI Too Long Адрес запроса слишком длинный для сервера. Часто следствие зацикленного редиректа или слишком больших параметров в URL.
415 Unsupported Media Type Формат передаваемых данных не поддерживается, например XML вместо ожидаемого JSON. Проверьте заголовок Content-Type.
416 Range Not Satisfiable Запрошенный диапазон байтов выходит за размер файла. Возникает при докачке изменившегося или усечённого файла.
417 Expectation Failed Сервер не может выполнить требование из заголовка Expect. Редкий код, обычно связан со старыми прокси.
418 I'm a teapot Шуточный код «Я — чайник» из первоапрельского RFC. Иногда сайты отдают его ботам и заблокированным клиентам.
421 Misdirected Request Запрос попал не на тот сервер, например из-за ошибки в настройке TLS/SNI на хостинге с несколькими доменами.
422 Unprocessable Content Запрос синтаксически корректен, но данные не проходят проверку. Типичный ответ API на невалидные поля формы.
423 Locked WebDAV: ресурс заблокирован другим пользователем или процессом, изменение сейчас невозможно.
424 Failed Dependency WebDAV: операция провалилась, потому что зависела от другой операции, которая не выполнилась.
425 Too Early Сервер не готов обрабатывать запрос, отправленный слишком рано в TLS-сессии (early data), — защита от атак повторного воспроизведения.
426 Upgrade Required Сервер требует перейти на более новый протокол, например обновить версию TLS. Какой именно — указано в заголовке Upgrade.
428 Precondition Required Сервер требует условный запрос (заголовки вида If-Match), чтобы избежать перезаписи чужих изменений при одновременной работе.
429 Too Many Requests Слишком много запросов: сработал лимит частоты. Клиенту нужно замедлиться; паузу стоит указывать в заголовке Retry-After.
431 Request Header Fields Too Large Заголовки запроса слишком большие, чаще всего из-за раздутых cookie. Почистите cookie или поднимите лимиты сервера.
444 No Response Нестандартный код nginx: сервер молча закрыл соединение без ответа. Обычно так отсекают ботов и нежелательные запросы.
451 Unavailable For Legal Reasons Доступ закрыт по юридическим причинам: блокировка по требованию властей или правообладателей.
498 Invalid Token Нестандартный код: истёкший или невалидный токен доступа. Так отвечают некоторые CDN и API на запрос с просроченным ключом.
499 Client Closed Request Нестандартный код nginx: клиент закрыл соединение, не дождавшись ответа. Много 499 — признак медленного бэкенда.

5xx — ошибки сервера

Сервер не справился с запросом: сбой приложения, шлюза или origin-сервера за CDN. Самый тревожный класс для владельца сайта.

Код Название Что означает
500 Internal Server Error Внутренняя ошибка сервера: упал скрипт или сломана конфигурация. Смотрите логи — посетители вместо сайта видят ошибку.
501 Not Implemented Сервер не поддерживает метод запроса и не умеет его обрабатывать, например экзотический HTTP-метод.
502 Bad Gateway Плохой шлюз: прокси (например, nginx) получил некорректный ответ от бэкенда. Частая причина — упавшее приложение или PHP-FPM.
503 Service Unavailable Сервис временно недоступен: перегрузка или техработы. При плановых работах отдавайте его с Retry-After, чтобы не терять позиции в поиске.
504 Gateway Timeout Шлюз не дождался ответа от бэкенда за отведённое время. Ищите медленные запросы к базе данных и внешним API.
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 Требуется вход в сеть: так отвечают captive-порталы Wi-Fi в отелях и кафе до авторизации пользователя.
520 Web Server Returned an Unknown Error Cloudflare: исходный сервер вернул неожиданный или пустой ответ. Смотрите логи хостинга — проблема на стороне вашего сервера.
521 Web Server Is Down Cloudflare: исходный сервер отклоняет соединения или выключен. Проверьте, запущен ли веб-сервер и не блокирует ли фаервол IP Cloudflare.
522 Connection Timed Out Cloudflare: не удалось установить TCP-соединение с вашим сервером за отведённое время. Сервер перегружен или недоступен.
523 Origin Is Unreachable Cloudflare: исходный сервер недостижим, например из-за ошибки маршрутизации или неверного IP в настройках DNS.
524 A Timeout Occurred Cloudflare: соединение установлено, но сервер не ответил за отведённые 100 секунд. Ищите медленные скрипты и запросы.
525 SSL Handshake Failed Cloudflare: не удалось SSL-рукопожатие с вашим сервером. Проверьте поддержку SSL на хостинге и режим шифрования в Cloudflare.
526 Invalid SSL Certificate Cloudflare: SSL-сертификат исходного сервера невалиден. Типично в режиме Full (Strict) с самоподписанным или истёкшим сертификатом.
530 Origin DNS Error Cloudflare: ошибка DNS источника; точная причина — в сопутствующем коде 1xxx в теле ответа. Чаще всего неверная DNS-запись origin-сервера.

Код 527 Railgun Error в таблице отсутствует намеренно: Cloudflare вывел технологию Railgun из эксплуатации в 2023 году, и в современных проверках этот код не встречается.

См. также