Сайт открывается в браузере, но страницы отдают код 404 — и выпадают из поиска. Почему так происходит, как проверить ответ сервера и как всё починить.
ГлавнаяБаза знанийКод 404 при живом контенте
База знаний · Техническое SEO

Код 404 при живом контенте: сайт виден людям, но не поисковикам

Аудит показал, что страницы отдают код 404, хотя они открываются и контент на месте? Для посетителя сайт работает, а для поисковика этих страниц не существует: Google и Яндекс смотрят на HTTP-код ответа, а не на то, что видно на экране. Разберём, откуда это берётся и как вернуть страницы в индекс.

404для поиска = «страницы не существует»
curl -Iодна команда проверяет ответ сервера
19 из 20страниц теряли в поиске в нашем кейсе
Кратко — суть проблемы
  • Браузер показывает страницу по содержимому, поисковик — по коду ответа
  • Код 404 при живом контенте = «страница есть для людей, но не существует для поиска»
  • Проверяется одной командой — curl -I: смотрите первую строку ответа
  • Причины: маршрутизация CMS, кривые редиректы, «умные» страницы ошибок, защита хостинга
  • После фикса — переобход в Search Console и Вебмастере, страницы возвращаются в индекс

Код ответа и содержимое — это разные вещи

Каждый ответ сервера состоит из двух частей: HTTP-статуса (200 OK, 301, 404, 500…) и тела — самого HTML. Это независимые вещи. Браузер устроен просто: получил тело — отрисовал его, какой бы код ни пришёл. Поэтому страница с кодом 404 и полным HTML внутри выглядит для человека абсолютно нормальной.

Поисковый робот работает иначе. Первым делом он читает код. Видит 200 OK — страница существует, её можно индексировать. Видит 404 Not Found — страницы нет, индексировать нечего, а если она уже была в индексе, её нужно оттуда убрать. И Google, и Яндекс здесь ведут себя одинаково — ориентируются на код, а содержимое при 404 просто игнорируют. Так и получается парадокс: страница одновременно живая для посетителей и несуществующая для поиска.

Почему это критично: разделы исчезают из выдачи

Коварство в том, что визуально всё хорошо. Сайт открывается, кнопки работают, заявки идут — с прямых заходов, из рекламы, из закладок. А органического трафика почти нет, и владелец не понимает почему: «сайт же работает».

Один из наших кейсов: у салона красоты в Минске 19 из 20 страниц — услуги, цены, контакты, онлайн-запись — отдавали код 404 при полностью живом контенте. В поиске существовала только главная. Для Google и Яндекса весь остальной сайт просто не существовал, сколько бы ссылок на него ни вело. Пока проблема не была найдена, любые вложения в продвижение уходили в пустоту: нельзя ранжировать страницу, которой для поисковика нет.

Откуда берётся 404 при живом контенте

Причина почти всегда техническая и находится на стороне сервера или CMS. Вот четыре типичных источника.

  • Маршрутизация CMS. Роутер находит нужную страницу и рендерит её, но статус проставляет как «не найдено». Частая болезнь после переезда, редизайна или ручных правок роутера, а также «умных» шаблонов страницы ошибок, которые перехватывают всё подряд;
  • Обработчик ошибок наоборот. Error-handler на 404 подставляет контент ближайшей страницы или общего шаблона вместо честной страницы ошибки. Пользователь видит осмысленный контент — и проблема маскируется, её замечают не сразу;
  • Правила редиректов сервера (nginx, Apache, .htaccess). Цепочки вроде «URL со слэшем → 301 → URL без слэша → 404», конфликтующие правила после переезда на HTTPS или смены структуры. Финал цепочки отдаёт 404, хотя страница по адресу есть;
  • Хостинг или защита. Антибот-защита, WAF или лимиты хостинга иногда отдают код 4xx в ответ роботу на легитимные страницы — особенно при частом обходе.

Как проверить ответ сервера

Главное правило: браузером эту проблему не поймать — он покажет страницу при любом коде. Смотреть нужно именно на HTTP-статус.

curl -I https://site.by/stranitsa/
HTTP/2 404  ← проблема: страница живая, а код «не найдено»
должно быть: HTTP/2 200
  1. Команда curl -I — смотрите первую строку ответа: 200 — всё в порядке, 404 или другой 4xx/5xx — проблема подтверждена
  2. Онлайн-проверка — в Яндекс Вебмастере есть инструмент «Проверка ответа сервера»; массово, по всем страницам сразу, ситуацию ловит наш SEO-аудит
  3. Google Search Console — отчёт «Индексирование страниц» → группа «Не найдено (404)»: там будут ваши живые URL, если они отдают 404
  4. Яндекс Вебмастер — «Страницы в поиске» → исключённые: страницы с кодом 4xx выпадают из поиска и попадают сюда

Как исправить

Лечение зависит от того, где именно теряется код, но логика одна — вернуть живым страницам честный 200 OK.

  • CMS (WordPress, Bitrix, MODX и другие): проверьте настройки ЧПУ и маршрутизации, пересохраните структуру постоянных ссылок (в WordPress — «Настройки → Постоянные ссылки → Сохранить»), отключите конфликтующие плагины «умных 404» и кастомные страницы ошибок;
  • Сервер (nginx, Apache): ревизия правил редиректов, уберите циклы «слэш / без слэша», настройте error_page так, чтобы 404 отдавался только для реально несуществующих URL;
  • Хостинг и защита: если 4xx отдаёт WAF или антибот-система — добавьте роботов Google и Яндекса в исключения и снимите избыточные лимиты на обход.

Отдельная история — страницы, которые закрыты от индексации намеренно. Если часть URL и должна быть недоступна поиску, это делается не кодом 404, а корректными инструкциями: об этом — в гайде про управление индексацией через robots.txt, sitemap и noindex.

После правки отправьте затронутые страницы на переобход в Google Search Console и Яндекс Вебмастере. Возврат в индекс обычно занимает от нескольких дней до 2–3 недель — зависит от того, как часто робот обходит сайт.

Что дальше

Проверьте ключевые страницы сайта командой curl -I — главную, услуги, категории, карточки. Если хотя бы часть отдаёт не 200, вы теряете эти разделы в поиске прямо сейчас, и никакое продвижение это не компенсирует, пока код не исправлен.

Хотите увидеть коды ответа по всем страницам сайта сразу — с пометкой, где именно живой контент отдаёт 404? Закажите SEO-аудит: наш AI-аудитор проверяет ответ каждой страницы автоматически и ловит эту ошибку одной из первых, а заодно смотрит скорость, метатеги и видимость сайта в ИИ-поиске.

Частые вопросы

Коротко о коде 404 при живом контенте

Страница открывается в браузере — значит, всё в порядке? +
Нет. Браузер отрисовывает тело ответа при любом HTTP-коде, поэтому страница с кодом 404 выглядит нормальной. Поисковые роботы ориентируются на код: 404 для них означает «страницы нет», и они её не индексируют. Проверять нужно именно ответ сервера — например, командой curl -I.
Чем это отличается от soft 404? +
Это зеркальные ситуации. Soft 404 — когда сервер отдаёт код 200 на пустой или несуществующей странице (поисковик считает её «пустышкой»). Здесь наоборот: код 404 отдаётся на живой, наполненной странице. Вредны обе: в первом случае в индекс попадает мусор, во втором — из индекса выпадает нужный контент.
Как быстро страницы вернутся в индекс после исправления? +
После того как страницы начнут отдавать код 200 и вы отправите их на переобход в Google Search Console и Яндекс Вебмастере, возврат в индекс обычно занимает от нескольких дней до 2–3 недель. Точный срок зависит от того, как часто робот обходит ваш сайт, и от его размера.
Может ли это быть из-за хостинга или защиты от ботов? +
Да. Антибот-защита, WAF или лимиты хостинга иногда отдают код 4xx в ответ поисковому роботу на легитимные страницы — особенно при частом обходе. В этом случае нужно добавить роботов Google и Яндекса в исключения и снять избыточные ограничения.
Проверим ваш сайт

Сколько страниц вашего сайта невидимы для поиска?

Закажите SEO-аудит — проверим код ответа каждой страницы и покажем, где живой контент отдаёт 404, а заодно скорость, метатеги, разметку и видимость сайта в ИИ-ответах.

SEO Академия