Коды ответа HTTP: полный список с расшифровкой
Код ответа — трёхзначное число, которым сервер сообщает, чем закончился запрос. Первая цифра — класс: 2xx — запрос выполнен, 3xx — нужно перейти по другому адресу, 4xx — ошибка в запросе, 5xx — сбой на сервере. Ниже — все коды из официального реестра с короткой расшифровкой, а у самых частых — ссылки на подробный разбор.
Содержание 6
Пять классов
| Класс | Что значит | Самые известные коды |
|---|---|---|
| 1xx | Информационный ответ: запрос получен, обработка идёт | 100, 101, 103 |
| 2xx | Успех: запрос получен, понят и принят | 200, 204, 206 |
| 3xx | Перенаправление: чтобы закончить запрос, нужен ещё шаг — обычно перейти по другому адресу | 301, 302, 304 |
| 4xx | Ошибка клиента: в запросе ошибка, или его нельзя выполнить | 403, 404, 429 |
| 5xx | Ошибка сервера: запрос с виду правильный, но сервер не смог его выполнить | 500, 502, 503 |
Стандарт HTTP требует от браузеров и программ понимать хотя бы класс ответа. Незнакомый код они обязаны понимать как первый код своего класса: неизвестный 4xx — как 400, неизвестный 5xx — как 500.
Слова после числа — Not Found, Bad Gateway — пояснение для человека. Стандарт HTTP/1.1 советует программам не опираться на этот текст, а в HTTP/2 его нет вовсе: передаётся только число. Поэтому один и тот же код у разных серверов подписан по-разному. Например, nginx называет код 413 «Request Entity Too Large», а в реестре он давно называется Content Too Large.
Как узнать код ответа страницы
- В браузере. Откройте инструменты разработчика (F12 или Ctrl+Shift+I, на Mac — Cmd+Option+I), перейдите на вкладку Network («Сеть») и обновите страницу. Код каждого запроса — в колонке Status.
- В терминале. Команда ниже покажет заголовки ответа, первая строка — версия протокола и код:
curl -I https://example.com/Ключ -I отправляет запрос HEAD, а на него некоторые сайты отвечают не так, как на обычный переход по ссылке. Код настоящего GET-запроса покажет вторая команда, а третья пройдёт по всей цепочке перенаправлений и выведет код каждого шага:
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/
curl -sIL https://example.com/Полный список
Все коды из реестра IANA на 6 октября 2026 года. Номера, которых нет в таблице (например, 419, 427, 509), никому не назначены.
1xx — информационные
| Код | Название | Что значит |
|---|---|---|
| 100 | Continue | Начало запроса принято, клиент может досылать остальное |
| 101 | Switching Protocols | Сервер по просьбе клиента переходит на другой протокол — например, на WebSocket |
| 102 | Processing | Код из первой спецификации WebDAV (RFC 2518): запрос принят, ответ ещё готовится |
| 103 | Early Hints | Предварительный ответ: сервер заранее подсказывает браузеру, какие файлы загружать, пока готовит основной |
| 104 | Upload Resumption Supported | Временная регистрация для черновика стандарта о докачке загрузок; действует до 13 ноября 2026 года |
2xx — успех
| Код | Название | Что значит |
|---|---|---|
| 200 | OK | Запрос выполнен |
| 201 | Created | Запрос выполнен, создан новый ресурс |
| 202 | Accepted | Запрос принят в обработку, но ещё не выполнен |
| 203 | Non-Authoritative Information | Запрос выполнен, но посредник (прокси) изменил ответ сервера |
| 204 | No Content | Запрос выполнен, тела ответа нет |
| 205 | Reset Content | Запрос выполнен, клиенту стоит очистить форму |
| 206 | Partial Content | Отдана часть файла по запросу диапазона — так работают докачка и перемотка видео |
| 207 | Multi-Status | WebDAV: в одном ответе результаты нескольких операций |
| 208 | Already Reported | WebDAV: элемент уже перечислен раньше в этом же ответе |
| 226 | IM Used | Сервер отдал не весь ресурс, а изменения к нему (RFC 3229) |
3xx — перенаправления
| Код | Название | Что значит |
|---|---|---|
| 300 | Multiple Choices | У ресурса несколько вариантов, нужно выбрать один |
| 301 | Moved Permanently | Адрес сменился навсегда |
| 302 | Found | Ресурс временно доступен по другому адресу |
| 303 | See Other | Результат смотрите по другому адресу — обычный ответ после отправки формы |
| 304 | Not Modified | Ресурс не изменился, можно показать копию из кэша |
| 305 | Use Proxy | Устарел, не используется |
| 306 | (Unused) | Был в старой версии стандарта, сейчас зарезервирован |
| 307 | Temporary Redirect | Временное перенаправление, метод запроса менять нельзя |
| 308 | Permanent Redirect | Постоянное перенаправление, метод запроса менять нельзя |
4xx — ошибки клиента
| Код | Название | Что значит |
|---|---|---|
| 400 | Bad Request | Сервер счёл запрос неправильным |
| 401 | Unauthorized | Нужно войти: нет логина и пароля или они не подошли |
| 402 | Payment Required | Зарезервирован на будущее |
| 403 | Forbidden | Доступ запрещён |
| 404 | Not Found | Страница не найдена |
| 405 | Method Not Allowed | Этот метод запроса (например, POST) по этому адресу не принимается |
| 406 | Not Acceptable | У сервера нет варианта ответа, который подошёл бы под заголовки Accept запроса |
| 407 | Proxy Authentication Required | Как 401, только войти нужно на прокси-сервере |
| 408 | Request Timeout | Клиент слишком долго присылал запрос |
| 409 | Conflict | Запрос конфликтует с текущим состоянием ресурса |
| 410 | Gone | Ресурс удалён насовсем |
| 411 | Length Required | Сервер требует заголовок Content-Length |
| 412 | Precondition Failed | Не выполнилось условие из заголовков запроса (If-Match и подобных) |
| 413 | Content Too Large | Тело запроса — например, загружаемый файл — слишком большое |
| 414 | URI Too Long | Адрес слишком длинный |
| 415 | Unsupported Media Type | Формат тела запроса не поддерживается |
| 416 | Range Not Satisfiable | Запрошенный диапазон выходит за пределы файла |
| 417 | Expectation Failed | Сервер не может выполнить требование из заголовка Expect |
| 418 | (Unused) | Шуточный «Я чайник»; зарезервирован, чтобы его никому не назначили |
| 421 | Misdirected Request | Запрос попал на сервер, который не отвечает за этот адрес |
| 422 | Unprocessable Content | Запрос составлен верно, но данные в нём обработать нельзя |
| 423 | Locked | WebDAV: ресурс заблокирован |
| 424 | Failed Dependency | WebDAV: не выполнилась операция, от которой зависела эта |
| 425 | Too Early | Сервер не хочет обрабатывать запрос, который могут прислать повторно (ранние данные TLS 1.3) |
| 426 | Upgrade Required | Нужно перейти на другой протокол — какой, сервер укажет в заголовке Upgrade |
| 428 | Precondition Required | Сервер требует условный запрос, чтобы не затереть чужие изменения |
| 429 | Too Many Requests | Слишком много запросов за короткое время |
| 431 | Request Header Fields Too Large | Заголовки запроса слишком большие |
| 451 | Unavailable For Legal Reasons | Доступ закрыт по юридическим причинам |
5xx — ошибки сервера
| Код | Название | Что значит |
|---|---|---|
| 500 | Internal Server Error | Внутренняя ошибка сервера |
| 501 | Not Implemented | Сервер не поддерживает то, что нужно для ответа |
| 502 | Bad Gateway | Сервер-посредник получил от следующего сервера неправильный ответ |
| 503 | Service Unavailable | Сервер временно не может обработать запрос: перегрузка или работы |
| 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, для которого его ввели, признано историческим |
| 511 | Network Authentication Required | Нужно войти в сеть — например, на странице входа в общественный Wi-Fi |
Коды nginx, которых нет в стандарте
nginx пишет в журнал несколько своих кодов. Посетитель видит их не всегда: 494–497 приходят ему как обычный 400, а 444 и 499 — вообще без ответа.
| Код | Что случилось | Что получит посетитель |
|---|---|---|
| 444 | nginx закрыл соединение, ничего не ответив, — так задаётся в настройках | Ошибку пустого ответа, в Chrome — ERR_EMPTY_RESPONSE |
| 494 | Заголовки запроса или cookie не поместились в буферы | Страницу «400 Request Header Or Cookie Too Large» |
| 495 | Клиентский сертификат не прошёл проверку | Страницу «400 The SSL certificate error» |
| 496 | Сервер требует клиентский сертификат, а его не прислали | Страницу «400 No required SSL certificate was sent» |
| 497 | Обычный HTTP-запрос пришёл на порт HTTPS | Страницу «400 The plain HTTP request was sent to HTTPS port» |
| 499 | Клиент закрыл соединение, не дождавшись ответа | Ничего — он уже ушёл |
Источники
- Реестр кодов ответа HTTP — IANA.
- RFC 9110, раздел 15 — стандарт HTTP, все основные коды.
- RFC 9112, раздел 4 — строка статуса в HTTP/1.1.
- RFC 6585 — коды 428, 429, 431 и 511.
- Исходный код nginx — коды 444 и 494–499.
Сверено 6 октября 2026 года.
Что почитать дальше
- Ошибка 404 Not Found — почему страница не находится и как это исправить на сайте.
- Ошибка 502 Bad Gateway — когда nginx не получил нормального ответа от PHP-FPM или приложения.
- Редирект 301 — как правильно переехать на новый адрес и не потерять позиции в поиске.
- Что делать, если хостинг лежит — порядок проверки, когда сайт не открывается.
Проверено и обновлено: 07.10.2026