HTTP-статусы — это короткие сообщения, которые сервер отправляет браузеру в ответ на каждый запрос. Большинство из них незаметны: пользователь просто видит страницу. Но когда что-то идёт не так — редирект ломается, страница пропадает, сервер падает — именно код статуса подскажет, где искать проблему.
Для SEO-специалиста понимание статус-кодов критично: они напрямую влияют на индексацию, передачу ссылочного веса и поведение краулеров. В этой статье — полный разбор всех актуальных кодов с акцентом на практику.
Быстрая навигация по классам
| Класс | Значение | Коды |
|---|---|---|
| 1xx | Информационные | 100, 101, 102 |
| 2xx | Успех | 200, 201, 202, 203, 204, 205, 206, 207 |
| 3xx | Редиректы | 301, 302, 303, 304, 307, 308 |
| 4xx | Ошибки клиента | 400, 401, 403, 404, 405, 410, 429… |
| 5xx | Ошибки сервера | 500, 502, 503, 504… |
Блок-схема: какой код использовать?
Две схемы помогут быстро выбрать правильный статус-код, не заглядывая в документацию каждый раз.
Редиректы: 301, 302, 307 или 308?
Выбор зависит от двух вопросов: переезд постоянный или временный, и нужно ли сохранить HTTP-метод (актуально для POST-запросов).
Страница недоступна: 301, 404 или 410?
Самый распространённый сценарий в SEO: страница удалена или перенесена. Схема поможет выбрать правильный ответ сервера.
1xx — Информационные коды
Временные ответы в процессе обработки запроса. В логах почти не встречаются, SEO-значения не имеют.
100 Continue
Сервер получил заголовки запроса и разрешает клиенту отправить тело. Появляется только при больших POST-запросах с заголовком Expect: 100-continue. Пользователь это не видит.
101 Switching Protocols
Сервер согласился сменить протокол по просьбе клиента — например, перейти с HTTP/1.1 на WebSocket. Встречается при установке постоянных соединений в реальном времени (чаты, live-обновления).
102 Processing
Используется в WebDAV: сервер принял запрос, но обработка занимает время. Код нужен, чтобы браузер не прервал соединение по таймауту.
2xx — Успешные ответы
Запрос принят и обработан. Для SEO важно, чтобы все полезные страницы возвращали именно 200 — и ничего другого.
200 OK
Самый важный код. Страница существует, сервер вернул контент. Все страницы, которые должны индексироваться, обязаны отдавать 200. Проблема возникает, когда «мягкие 404» (страница с сообщением об ошибке) отдают 200 — Googlebot индексирует пустышки.
201 Created
Запрос выполнен, новый ресурс создан. Используется в API: например, после успешной отправки формы или создания записи через REST API.
202 Accepted
Запрос принят в обработку, но результат ещё не готов. Типичный случай — асинхронные задачи: импорт данных, генерация отчёта.
203 Non-Authoritative Information
Запрос выполнен, но данные взяты не из исходного источника (кеш, прокси). По смыслу похож на 200, но сигнализирует о возможной устаревшей информации.
204 No Content
Запрос выполнен, тело ответа отсутствует. Используется для действий без визуального результата: сохранение настроек, удаление элемента, пинг сервера.
206 Partial Content
Сервер вернул только часть ресурса — в ответ на заголовок Range. Используется при докачке файлов и потоковом видео.
3xx — Редиректы
Класс кодов, важнейший для SEO. Неправильно настроенные редиректы — одна из самых частых причин потери трафика и веса страниц.
301 Moved Permanently
Постоянный редирект. Передаёт ~99% ссылочного веса на новый URL. Используется при:
- смене домена или протокола (HTTP → HTTPS)
- удалении страницы с переносом аудитории на замену
- нормализации дублей (
/page→/page/)
⚠️ Цепочки редиректов (301 → 301 → 301) теряют вес и замедляют краулинг. Всегда ведите напрямую к конечному URL.
🔴 Чем опасна для SEO: Каждый лишний переход в цепочке съедает часть ссылочного веса. Три 301 подряд — и до конечного URL доходит заметно меньше equity. Внутренние ссылки на старые URL вынуждают Googlebot делать дополнительные запросы, сжигая краулинговый бюджет.
302 Found
Временный редирект. В отличие от 301, не передаёт ссылочный вес и не должен применяться для постоянных переносов. Используется при A/B-тестировании, техобслуживании, геоперенаправлении.
⚠️ Частая ошибка — использовать 302 там, где нужен 301. Google может индексировать оба URL или не передать вес.
🔴 Чем опасна для SEO: Ссылочный вес не переходит на новый URL. Если 302 стоит на страницах с обратными ссылками — вы теряете весь накопленный authority. Google может оставить в индексе оба адреса, создавая дубли.
303 See Other
После POST-запроса переводит пользователя на страницу результата через GET. Используется для предотвращения повторной отправки формы при обновлении страницы (паттерн Post/Redirect/Get).
304 Not Modified
Страница не изменилась с момента последнего запроса. Браузер использует кешированную версию. Ускоряет загрузку и снижает нагрузку на сервер. Для SEO нейтрален — Googlebot тоже умеет кешировать.
307 Temporary Redirect
Аналог 302, но строго сохраняет метод запроса (POST остаётся POST). Использовать вместо 302, если важно сохранить метод.
308 Permanent Redirect
Постоянный редирект, строго сохраняющий HTTP-метод запроса. Отличие от 301: если клиент отправил POST, сервер перенаправляет его именно как POST, а не как GET. Актуален для API и форм, где метод критичен. Передаёт ссылочный вес так же, как 301.
4xx — Ошибки на стороне клиента
Сервер понял запрос, но не может его выполнить. С точки зрения SEO — прямые потери: краулер тратит бюджет, страницы выпадают из индекса.
400 Bad Request
Запрос сформирован неправильно: некорректный синтаксис, невалидные параметры, битые заголовки. Часто возникает при проблемах с формами или API-интеграциями.
401 Unauthorized
Требуется авторизация. Сервер вернёт этот код, если пользователь не передал учётные данные или они неверны. Для SEO: закрытые разделы с 401 не индексируются (и не должны).
403 Forbidden
Доступ запрещён даже при правильной авторизации. Отличие от 401: сервер понимает, кто вы, но всё равно не пускает. Причины: IP-блокировка, настройки файрвола, неправильные права на файлы.
🔍 Если Googlebot получает 403 на страницы, которые должны быть открыты — проверьте блокировки User-Agent в .htaccess или nginx-конфиге.
🔴 Чем опасна для SEO: Если Googlebot получает 403 вместо 200 — страница не попадёт в индекс. Частая причина: правило в файрволе или CDN блокирует ботов по User-Agent. Проверяйте доступность через Google Search Console → Инструмент проверки URL.
404 Not Found
Страница не найдена. Ресурс отсутствует, но может появиться в будущем. Для SEO:
- 404 на страницы без внешних ссылок — норма, не требует действий
- 404 на страницы со ссылками — потеря веса, нужен 301 на замену
- «Мягкие 404» (soft 404) — страница с сообщением об ошибке, которая возвращает код 200. Googlebot индексирует её как обычную страницу. Это самый опасный случай: в индексе накапливаются бессмысленные URL, которые занимают краулинговый бюджет и разбавляют качество сайта.
🔴 Чем опасна для SEO: 404 на страницы со входящими ссылками — прямая потеря ссылочного веса. Мягкие 404 засоряют индекс и сигнализируют Google о низком качестве сайта. Массовые 404 снижают краулинговый бюджет.
410 Gone
Страница удалена навсегда. В отличие от 404, явно сигнализирует Googlebot: «не ищи, не возвращайся». Google быстрее деиндексирует страницы с 410, чем с 404. Используйте, когда контент не будет восстановлен.
421 Misdirected Request
Запрос был направлен серверу, который не может его обработать — например, из-за несоответствия сертификата TLS при HTTP/2-соединении. Часто возникает при неправильной конфигурации обратного прокси или CDN. Не имеет прямого SEO-значения, но требует исправления на уровне инфраструктуры.
🔴 Чем опасна для SEO: Используйте 410 вместо 404, когда контент удалён навсегда. Google деиндексирует такие страницы значительно быстрее — иногда за несколько дней против нескольких недель для 404.
429 Too Many Requests
Слишком много запросов за короткое время. Используется для rate limiting. Если краулер получает 429 — он замедляется или временно останавливается.
451 Unavailable For Legal Reasons
Доступ заблокирован по юридическим причинам: цензура, решение суда, авторское право. Код назван в честь романа «451 градус по Фаренгейту».
5xx — Ошибки на стороне сервера
Сервер понял запрос, но не смог его выполнить. Для SEO критичны: если сервер массово отдаёт 5xx, краулер снижает частоту обходов, а страницы могут выпасть из индекса.
500 Internal Server Error
Общая ошибка сервера. Что-то пошло не так, но сервер не уточняет что. Причины: баг в коде, некорректный .htaccess, нехватка памяти PHP. Смотрите error-логи сервера.
🔴 Чем опасна для SEO: Единичные 500 не страшны. Но если сервер массово отдаёт 500 в течение нескольких часов — Googlebot начинает снижать частоту обходов. При длительных сбоях страницы могут временно выпасть из индекса.
502 Bad Gateway
Промежуточный сервер (nginx, CDN, балансировщик) получил некорректный ответ от backend. Часто появляется при перегрузке приложения или его падении.
503 Service Unavailable
Сервер временно недоступен — перегрузка или техобслуживание. При плановом обслуживании добавляйте заголовок Retry-After, чтобы краулер знал, когда вернуться.
💡 При длительном 503 (больше суток) Google начинает исключать страницы из индекса.
🔴 Чем опасна для SEO: Кратковременный 503 (до нескольких часов) Google воспринимает нормально. Критично: отсутствие заголовка Retry-After — без него краулер не знает, когда вернуться, и может начать снижать приоритет сайта раньше.
504 Gateway Timeout
Промежуточный сервер не дождался ответа от backend в установленное время. Симптом перегруженного или зависшего приложения.
505 HTTP Version Not Supported
Сервер не поддерживает версию HTTP из запроса. В современном интернете встречается редко.
511 Network Authentication Required
Клиент должен авторизоваться в сети, чтобы получить доступ к ресурсу — например, принять условия использования публичного Wi-Fi. Этот код генерируется не исходным сервером, а промежуточным (captive portal). Для SEO значения не имеет: Googlebot не подключается через такие сети.
Сводная таблица: что делать при каждом коде
| Код | Ситуация | Действие для SEO |
|---|---|---|
| 200 | Страница работает | Норма. Проверьте на «мягкие 404» |
| 301 | Постоянный перенос | Обновите sitemap и внутренние ссылки |
| 302 | Временный перенос | Не используйте для постоянных переносов |
| 304 | Кеш актуален | Норма |
| 403 | Доступ закрыт | Проверьте, не блокируете ли Googlebot |
| 404 | Страница не найдена | 301 на замену или 410 если удалено навсегда |
| 410 | Удалено навсегда | Googlebot быстро деиндексирует |
| 429 | Rate limit | Убедитесь, что краулеры не блокируются |
| 500 | Ошибка сервера | Срочно! Смотрите error-логи |
| 503 | Сервер недоступен | Добавьте Retry-After, исправьте за <24ч |
Как проверить коды статусов
- DevTools → Network — откройте любую страницу, вкладка Network покажет статус каждого запроса
- Google Search Console → Покрытие — покажет 404, 301 и проблемные страницы из индекса
- curl в терминале:
curl -I https://example.com/page - Screaming Frog — краулер покажет коды для всех страниц сайта разом