Что делать, если страница 404 возвращает код 200 вместо 404? Нужно добиться, чтобы сервер отдавал несуществующим адресам именно статус 404, а не 200 — тогда поисковые роботы перестанут считать заглушку полноценной страницей. Причина почти всегда в «мягком 404»: CMS, плагин или правило переадресации подставляет шаблон ошибки, но оставляет код ответа 200. Лечится это настройкой на уровне веб-сервера, шаблона или маршрутизатора — без правки контента.
Порядок действий простой: проверьте реальный код ответа через заголовки сервера, найдите источник подмены (правило rewrite, модуль SEO, кастомный шаблон 404, обработчик в приложении) и заставьте его возвращать статус 404 вместе с телом страницы. В nginx это делается директивой error_page с последующим return 404, в Apache — через ErrorDocument, в популярных CMS — настройкой страницы ошибки с принудительным статусом. После правки убедитесь, что заглушка не попала в индекс, а в панелях вебмастера пропали отчёты о мягких 404: иначе робот продолжит тратить краулинговый бюджет на несуществующие адреса, а реальные страницы будут индексироваться медленнее.
Отдельный нюанс: код 200 на несуществующем адресе создаёт дубли и размывает вес, поэтому проверку стоит проводить не только для одной страницы, а для всех типовых ошибок — удалённых товаров, старых URL после смены структуры, битых ссылок из внешних источников. Если сайт большой или на CMS с самописными модулями, диагностика и корректная настройка статусов занимают несколько часов, а ошибка в конфигурации легко роняет весь раздел — в таких случаях разумнее поручить аудит и внедрение специалисту, который настроит отдачу кодов, проверит редиректы и закроет задачу под ключ.
