Перейти к содержанию
← Все статьи Soft 404: что это за ошибка и как её исправить

Soft 404: что это за ошибка и как её исправить

Страница отвечает 200, а выглядит как «ничего не найдено». Почему краул такое не находит, откуда это берётся в SPA и что отдавать вместо — по документации Google.

Soft 404 — это страница, которая говорит посетителю «ничего не найдено», а серверу — «всё в порядке». Search Console определяет это как запрос, который «возвращает понятное пользователю сообщение “не найдено”, но не код ответа 404». Всё дело в расхождении: статус говорит, что страница есть, содержимое — что её нет, и Google приходится решать, чему верить.

Из-за этого soft 404 — единственная проблема индексации, которую не найдёт краул. Любой другой статус виден в колонке кодов: 403 для Googlebot, 404, цепочка редиректов. Soft 404 отвечает 200, поэтому обход сайта — в том числе нашим сканером — покажет здоровую страницу. Сигнал в содержимом, а не в заголовке ответа.

Как Google решает, что это soft 404

Правило записано в документации по обходу, в строке про 2xx: Google берёт контент в обработку, и «Если контент выглядит для Google Поиска как ошибка, пустая страница или сообщение об ошибке, Search Console покажет ошибку soft 404». Там же — та часть, которую обычно пропускают: «Для Google Поиска код 2xx не гарантирует индексирование».

То есть ни списка запрещённых фраз, ни опубликованного порога нет. Задокументировано направление оценки: контент, который читается как ошибка или в котором ничего нет, считается ошибкой независимо от того, что сказал заголовок. Отсюда и рекомендация самой Search Console: «Для действительно отсутствующих страниц рекомендуем возвращать код 404 и добавить на страницу больше информации, чтобы мы поняли, что это не soft 404».

Откуда берутся soft 404

СтраницаПочему читается как ошибка
Пустая категория или комбинация фильтровШаблон отрисовался, список пуст. Для читателя и для Google у страницы нет предмета.
Товар закончился, но страница осталасьУшли цена, описание и кнопка покупки — осталось уведомление.
Внутренний поиск без результатов«По вашему запросу ничего не найдено» — это буквально сообщение об ошибке с кодом 200.
Удалённая страница с редиректом на главнуюСпрашивали конкретное, ответили другой страницей. За исходным URL по-прежнему ничего нет.
SPA, которое не дождалось данныхОболочка отрисовалась, контент не пришёл, а 200 был отдан до того, как это выяснилось.
Истёкшее объявление, прошедшее событие, закрытая вакансияСтраница живёт с одной строкой о том, что всё закончилось.

Сейчас главный источник — одностраничные приложения

Клиентский роутинг не может выставить код ответа: статус определился, когда отдавали оболочку. Google пишет об этом прямо и называет две стратегии, чтобы избежать ошибок soft 404 в одностраничных приложениях:

  • редирект на JavaScript на URL, для которого сервер отвечает 404 — например /not-found;
  • добавление <meta name="robots" content="noindex"> на страницы ошибок средствами JavaScript.

Там же объяснено, почему проблема возникает вообще: «Все страницы с кодом 200 отправляются в очередь на отрисовку независимо от того, есть ли на странице JavaScript». Оболочка получает свой 200 задолго до того, как станет известно, есть ли данные.

Как их найти

  1. Начинать с Search Console, потому что знает только она. В отчёте об индексировании есть статус с точным названием «Страница с кодом soft 404». Наш инструмент проблем индексации группирует такие URL, чтобы было видно: это один шаблон, одна папка или весь каталог.
  2. Посмотреть на страницу так, как её отрисовал Google. Рекомендация Search Console — запустить живую проверку URL и открыть «Посмотреть проверенную страницу» со скриншотом. Пустой блок там, где в браузере товары, и есть ответ.
  3. Проверить, что на странице после отрисовки. Если весь текст — заголовок и одно предложение, он прочитается как ошибка независимо от намерений. Анализатор страницы показывает, что на ней фактически есть.
  4. Отследить те, что ещё приносят клики. У части soft 404 есть трафик и входящие ссылки. Органические 404 находят URL, которые получают поисковый трафик и при этом отвечают как ошибка, — таким нужен редирект, а не удаление.

Что отдавать вместо

Починка зависит от того, почему страница пуста, а не от того, что удобнее.

СитуацияПравильный ответ
Страницы действительно нет404, а если точно не вернётся — 410. Рекомендация Google для реально отсутствующих страниц прямая.
Контент переехал301 на страницу, которая отвечает на тот же запрос, а не на главную.
Товар временно закончилсяОставить 200, оставить описание и характеристики, написать, когда вернётся. У страницы остаётся предмет.
Категория пуста, но раздел существуетОставить 200 и добавить содержание: описание, смежные категории, соседние фильтры. Либо закрыть noindex, пока пусто.
Результаты внутреннего поискаЗакрыть в robots.txt. Их вообще не нужно обходить.
Состояние ошибки в SPAОдна из двух задокументированных стратегий выше: редирект на реальный 404-URL или noindex, добавленный на JavaScript.

Остальные решения по кодам ответа, включая случаи, когда 410 лучше 404, собраны в нашем справочнике HTTP-статусов.

Что изменится после исправления

Страница, которая начала отвечать 404, уходит из индекса — в этом и смысл. Ждите, что число в статусе «soft 404» упадёт, а в «Не найдено (404)» вырастет: это работает починка, а не новая проблема. Страницы, которые вы вместо этого наполнили содержанием, остаются на 200, и их нужно переобойти и переоценить — сроков на это Google не публикует. Следить стоит за одним: если число soft 404 не сдвинулось вообще, обычно это значит, что шаблон починили на одной странице и не починили на сотне остальных, собранных из него.

FAQ по статье

Короткие ответы на частые вопросы по теме статьи.

Что такое soft 404?
Страница, которая возвращает успешный код ответа и при этом показывает сообщение «не найдено». Search Console описывает это как запрос, возвращающий понятное пользователю сообщение об отсутствии страницы, но не код 404.
Вредит ли soft 404 продвижению?
Страница не будет проиндексирована, а обход тратится на URL, которые ни на что не отвечают. Код 2xx индексирование не гарантирует — Google говорит об этом прямо, — так что успешный статус здесь ничего не даёт.
Почему краулер не находит soft 404?
Потому что сервер отвечает 200. Проверки по статусам, включая обход сайта, видят здоровую страницу. Сигнал в содержимом, поэтому работают отчёт об индексировании и живая проверка отрисовки.
Как исправить soft 404 в одностраничном приложении?
Google документирует два варианта: редирект на JavaScript на URL, который сервер отдаёт с кодом 404, либо добавление мета-тега robots noindex в состояние ошибки средствами JavaScript.
Можно ли редиректить soft 404 на главную?
Нет. Спрашивали конкретную страницу, а главная на этот запрос не отвечает. Редирект нужен на страницу по той же теме — либо отдавайте 404 и отпускайте URL.
Товар закончился и стал soft 404 — удалять страницу?
Не нужно, если товар вернётся. Оставьте описание, характеристики и фотографии и напишите, что произошло. Страница становится soft 404 только тогда, когда её содержимое читается как сообщение об ошибке.