Коды состояния HTTP — полный справочник с расшифровкой и решениями

Все коды HTTP: 1xx, 2xx, 3xx, 4xx, 5xx — расшифровка, причины появления и как исправить ошибки 404, 500, 403, 502 и другие.
Ошибки HTTP Windows

Коды состояния HTTP — это трёхзначные числа, которые сервер возвращает в ответ на каждый запрос браузера или приложения. Они показывают, успешно ли обработан запрос, произошло ли перенаправление или возникла ошибка на стороне клиента либо сервера. Понимать коды HTTP нужно всем: веб-разработчикам, SEO-специалистам и пользователям, которые видят ошибку на экране.

Для быстрого поиска нужного кода используйте Ctrl+F и введите номер.

Категории кодов HTTP

  1. 1xx — Информационные: сервер принял запрос и продолжает обработку
  2. 2xx — Успешные: запрос выполнен корректно
  3. 3xx — Перенаправления: клиент должен сделать дополнительный запрос
  4. 4xx — Ошибки клиента: проблема на стороне запроса
  5. 5xx — Ошибки сервера: проблема на стороне сервера

Информационные коды (1xx)

100 Continue

Сервер получил заголовки запроса и разрешает клиенту отправить тело. Используется при отправке больших объёмов данных (например, загрузка файла) — позволяет не тратить трафик, если сервер заранее отклоняет запрос.

101 Switching Protocols

Сервер соглашается сменить протокол — например, перейти с HTTP на WebSocket. После этого ответа соединение переходит в режим нового протокола. Часто встречается при работе с чатами и реал-тайм приложениями.

102 Processing

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

Успешные коды (2xx)

200 OK

Стандартный успешный ответ. При GET-запросе в теле ответа передаётся запрошенный ресурс. При POST — подтверждение принятых данных. Если вы видите 200 — всё работает корректно.

201 Created

Запрос успешно выполнен и в результате создан новый ресурс. URI нового ресурса возвращается в заголовке Location. Типичный ответ при успешном POST-запросе к API (например, создание пользователя или записи).

202 Accepted

Запрос принят в обработку, но ещё не завершён. Сервер может обработать его асинхронно — например, поставить в очередь. Используется в фоновых задачах: экспорт данных, отправка рассылки.

204 No Content

Сервер успешно обработал запрос, но не возвращает тело ответа. Часто используется в REST API при DELETE-запросах или при сохранении без необходимости обновлять страницу.

206 Partial Content

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

Коды перенаправления (3xx)

301 Moved Permanently

Ресурс окончательно переехал на новый адрес, указанный в заголовке Location. Браузеры и поисковые роботы запоминают новый URL и в дальнейшем обращаются сразу к нему. SEO-важность: 301 передаёт «вес» страницы на новый адрес. Используйте при постоянном переносе страниц или при смене домена.

302 Found

Ресурс временно доступен по другому адресу. В отличие от 301, следующие запросы должны идти по оригинальному URL. SEO-важность: 302 не передаёт вес, поэтому не используйте его вместо 301 при постоянных редиректах.

303 See Other

Ответ на запрос находится по другому URI и должен быть получен методом GET. Типичное применение: после успешной отправки формы (POST) — перенаправить пользователя на страницу «Спасибо», чтобы при обновлении страницы форма не отправлялась повторно.

304 Not Modified

Ресурс не изменился с момента последнего запроса — клиент может использовать кэшированную копию. Браузер при повторном посещении сайта проверяет актуальность кэша: если сервер возвращает 304, страница загружается мгновенно без повторной загрузки файлов.

307 Temporary Redirect

Временное перенаправление, аналогичное 302, но с явным условием: метод HTTP и тело запроса должны быть сохранены при редиректе. Например, POST-запрос остаётся POST-запросом, а не конвертируется в GET.

308 Permanent Redirect

Аналог 301, но метод и тело запроса сохраняются. Рекомендуется при постоянном переносе API-эндпоинтов, принимающих POST-запросы.

Ошибки клиента (4xx)

400 Bad Request

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

401 Unauthorized

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

403 Forbidden

Сервер понял запрос, но отказывает в доступе. Аутентификация не поможет — нет прав. Частые причины: файл или папка закрыты для доступа, IP-адрес заблокирован, неправильные права доступа к файлу на сервере (chmod). Для разработчиков: проверьте права на директорию (755 для папок, 644 для файлов).

404 Not Found

Сервер не может найти запрошенный ресурс. Самый распространённый HTTP-код ошибки. Причины: опечатка в URL, страница удалена, изменена структура сайта. Для владельцев сайтов: настройте 301-редиректы при переносе страниц и создайте информативную страницу 404 с навигацией.

405 Method Not Allowed

Метод HTTP недопустим для данного ресурса. Сервер указывает допустимые методы в заголовке Allow. Например, попытка отправить POST-запрос на ресурс, принимающий только GET.

408 Request Timeout

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

409 Conflict

Конфликт при обработке запроса — например, попытка создать ресурс с уже существующим ID или редактирование устаревшей версии документа. Для разработчиков: сервер должен указать, как разрешить конфликт.

410 Gone

Ресурс окончательно удалён и не будет восстановлен. В отличие от 404, сервер явно сообщает, что ресурс удалён намеренно. Поисковые роботы исключат URL из индекса быстрее, чем при 404.

429 Too Many Requests

Клиент отправляет слишком много запросов за единицу времени (rate limiting). Сервер может указать в заголовке Retry-After, когда можно повторить запрос. Часто встречается при работе с API.

Ошибки сервера (5xx)

500 Internal Server Error

Общая ошибка сервера — что-то пошло не так на серверной стороне. Причины: ошибки в PHP/Python/Node.js скриптах, проблемы с базой данных, синтаксические ошибки в конфигурации. Для владельцев сайтов: смотрите логи ошибок сервера (error.log). Для пользователей: попробуйте повторить запрос позже.

501 Not Implemented

Сервер не поддерживает функциональность, необходимую для обработки запроса. Встречается при использовании нестандартных методов HTTP или при обращении к неподдерживаемым функциям API.

502 Bad Gateway

Прокси-сервер или балансировщик нагрузки получил некорректный ответ от вышестоящего сервера. Частые причины: вышестоящий сервер упал или перезагружается, таймаут при обращении к backend. Обычно временная проблема — попробуйте обновить страницу через 1–2 минуты.

503 Service Unavailable

Сервер временно недоступен — перегрузка или техническое обслуживание. Правильно настроенный сервер возвращает заголовок Retry-After с временем восстановления. Поисковые роботы не удаляют страницы из индекса при 503, если он возвращается кратковременно.

504 Gateway Timeout

Прокси-сервер не получил ответ от вышестоящего сервера в отведённое время. Похож на 502, но причина — таймаут, а не некорректный ответ. Часто возникает при высокой нагрузке или медленных запросах к базе данных.

505 HTTP Version Not Supported

Сервер не поддерживает версию протокола HTTP, использованную в запросе. Редкая ошибка — возникает при использовании устаревших или нестандартных клиентов.

Частые ошибки и как их исправить

404 на рабочей странице

  1. Очистить кэш браузера: Ctrl+Shift+Delete
  2. Проверить правильность URL (лишние символы, пробелы)
  3. Если страница точно существовала — возможно, сайт переехал. Поищите через Google по названию страницы

500 на вашем сайте

  1. Проверить error.log на хостинге
  2. Временно переименовать .htaccess (если Apache): иногда там синтаксическая ошибка
  3. Проверить права на файлы и папки
  4. Деактивировать все плагины (для WordPress) и проверить, исчезла ли ошибка

503 при высокой нагрузке

  1. Подождать 5–10 минут и повторить
  2. Если ошибка на вашем сайте — проверить нагрузку на хостинг через панель управления
  3. Рассмотреть переход на тариф с большими ресурсами или подключение CDN

Что делать если ничего не помогло

Если ошибки 4xx или 5xx не устраняются:

  • Ошибки 4xx: обратитесь к владельцу сайта или проверьте статус сервиса на Downdetector
  • Ошибки 5xx на вашем сайте: свяжитесь с поддержкой хостинга — они имеют доступ к системным логам
  • Проблемы с API: проверьте документацию и статусную страницу сервиса

FAQ

В чём разница между 301 и 302 редиректом?

301 — постоянный редирект: передаёт «вес» страницы новому URL, поисковики обновляют индекс. 302 — временный: вес не передаётся, исходный URL остаётся в индексе. Для постоянного переноса страниц используйте только 301.

Влияют ли коды HTTP на SEO?

Да. 301 передаёт позиции в поиске. 404 и 410 сигнализируют поисковикам об удалённых страницах. 503 при длительном простое может привести к временному исключению из индекса. 200 — норма. 302 вместо 301 при постоянном редиректе — потеря веса страницы.

Что означает ошибка 403 Forbidden и как её исправить?

403 означает запрет доступа без возможности авторизоваться. На сервере: проверьте права на файлы (папки — 755, файлы — 644 или 640). Проверьте, не заблокирован ли ваш IP в .htaccess или файрволе сервера.

Почему возникает ошибка 502 Bad Gateway?

502 появляется, когда промежуточный сервер (nginx, CloudFlare, балансировщик) не получил корректный ответ от backend-сервера. Чаще всего причина — перезагрузка или падение backend. Обычно проходит само через 1–5 минут.

Что делать, если сайт отдаёт 500 после обновления плагина WordPress?

Зайдите в папку wp-content/plugins через FTP или файловый менеджер хостинга. Переименуйте папку проблемного плагина (например, добавьте -disabled). WordPress автоматически деактивирует его, и сайт заработает.

Чем отличается 404 от 410?

404 означает «не найдено» — сервер не знает, временно это или постоянно. 410 означает «удалено навсегда» — явный сигнал для поисковых роботов исключить URL из индекса. Если страница удалена намеренно и навсегда — лучше возвращать 410.

Код 429 в API — что делать?

Вы превысили лимит запросов. Проверьте заголовок Retry-After в ответе — там указано, через сколько секунд можно повторить запрос. Для автоматических систем реализуйте экспоненциальную задержку между повторными запросами.

Алексей Герзанов aka Gerzoid
Алекс Гезанов

Работаю в сервисном центре по ремонту и обслуживанию бытовой техники. За более чем 10 лет трудовой деятельности, я сталкивался с решением большого количества проблем в работе ОС Windows, периферийных устройств, бытовой техники, игровых консолей Playstation и т. д.

Добавить комментарий

  1. Светлана

    Где узнать про коды ошибок http

    Ответить
    1. Алексей Герзанов aka Gerzoid
      Алекс Гезанов автор

      Здравствуйте, в данной статье расписаны основные коды ошибок.

      Ответить