Проверка страницы 404

Запрашиваем три заведомо несуществующих адреса и смотрим, что отвечает сервер: честный 404, код 200 вместо ошибки или переадресацию на главную. Заодно разбираем саму страницу ошибки — есть ли на ней меню, поиск и куда идти посетителю.

Запрос с нашего сервера Без регистрации До 6 проверок в минуту
Запрашиваем три случайных несуществующих адреса: обычный раздел, вложенный путь и файл с расширением. Сайты часто обрабатывают их по-разному, поэтому одной проверки мало.
Код ответа по каждому адресу, переадресации, совпадение с главной, а также саму страницу ошибки: заголовок, объём текста, меню, поиск и число ссылок.

Что отвечает сайт

Введите адрес сайта — проверим за несколько секунд

Коды ответа

Почему «мягкий 404» вредит сайту

Когда страницы нет, сервер обязан сказать об этом кодом 404. Но на многих сайтах несуществующий адрес отвечает кодом 200: человек видит сообщение «страница не найдена», а поиск получает обычную страницу с кодом «всё в порядке». Это называется мягким 404, и последствия у него неприятные: в индекс набиваются сотни пустых адресов, краулинговый бюджет тратится на мусор, а нужные страницы обходятся реже.

Особенно опасен вариант, когда вместо ошибки показывается главная страница. Тогда любой выдуманный адрес становится копией главной — и поиск видит бесконечный источник дублей. Эта проверка показывает, какой из сценариев у вас, и сразу по трём разным адресам.

Как должно быть правильно

  • Код 404 или 410. Сразу по запрошенному адресу, без переадресаций. 410 говорит, что страницу удалили навсегда — поиск выбросит её из индекса быстрее.
  • Без редиректа на главную. Перенаправление вместо ошибки путает посетителя: он нажал на ссылку из закладок и вдруг оказался на главной, не понимая, что произошло.
  • Понятный текст. Короткое объяснение вместо технического «Error 404» — люди уходят с пустых страниц мгновенно.
  • Путь дальше. Меню, ссылки на основные разделы, поиск по сайту. Задача страницы ошибки — вернуть человека в каталог, а не попрощаться с ним.
  • Свой заголовок title. Чтобы в истории браузера и во вкладке страница не выглядела безымянной.
  • Отдельный адрес не нужен. Страница ошибки должна открываться по тому адресу, который запросили, а не по /404.html — иначе появляется лишний переход.

Где это чинится

  • Apache. Директива ErrorDocument 404 /404.php в .htaccess. Важно, чтобы сам обработчик не отдавал код 200 — в PHP это http_response_code(404).
  • Nginx. error_page 404 /404.html; вместе с правильным кодом от бэкенда.
  • WordPress. Шаблон 404.php в теме. Мягкий 404 чаще всего появляется из-за плагинов перенаправлений, которые ловят все неизвестные адреса и ведут на главную.
  • 1С-Битрикс. Настройки ЧПУ и файл 404.php в корне: нужно, чтобы он выставлял заголовок ответа, а не просто показывал текст.
  • Одностраничные приложения. Если сайт на React или Vue отдаёт index.html на любой адрес, код всегда будет 200 — нужен серверный обработчик для неизвестных путей.

После проверки

Найти страницы, которые ссылаются на несуществующие адреса, поможет поиск битых ссылок: обычно мягкий 404 вскрывается именно там, где внутренняя ссылка ведёт в никуда. Посмотреть полную цепочку переходов по конкретному адресу можно в цепочках редиректов, а проверить коды ответа списком адресов — в кодах ответа.

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

Не нашли ответ? Напишите в Telegram

Почему проверяются три адреса, а не один?

Потому что сервер обрабатывает их по-разному. Обычный несуществующий раздел может отдавать честный 404, вложенный путь — попадать в обработчик CMS и возвращать 200, а файл с расширением .html — уходить к веб-серверу напрямую. Три пробы показывают картину целиком.

Код 200 на несуществующем адресе — это точно ошибка?

Да, если по этому адресу показывается сообщение об ошибке или главная. Поиск ориентируется на код ответа, а не на текст: при коде 200 он считает адрес нормальной страницей и добавляет его в индекс. Исключение одно — если по адресу действительно есть содержимое, но тогда это не 404.

Что лучше — 404 или 410?

404 говорит «страницы нет», 410 — «страница была и удалена навсегда». Для большинства случаев достаточно 404. Код 410 имеет смысл, когда вы сознательно убрали раздел и хотите, чтобы поиск забыл о нём быстрее.

Можно ли перенаправлять несуществующие адреса на главную?

Так делать не стоит. Для поиска это превращает любой выдуманный адрес в дубль главной, а человека сбивает с толку. Редирект уместен только для страниц, которые реально переехали, и вести он должен на замену, а не на главную.

Мы отдаём 404, но страница пустая. Это проблема?

Технически нет, для поиска всё в порядке. Но с пустой страницы посетитель уходит с сайта: ему некуда нажать. Добавьте объяснение, меню, поиск и ссылки на популярные разделы — это дешёвый способ сохранить часть трафика.

Нужен ли на странице 404 запрет индексации?

Не обязательно. Код 404 сам по себе означает, что индексировать нечего. Запрет через noindex не помешает, но и пользы почти не даст — главное, чтобы код ответа был верным.

Сделано практиком

Поиск набрал в индекс мусорных страниц?

Мягкий 404 — одна из причин, по которым в индекс попадают пустые адреса, а нужные страницы теряют позиции. Проведу технический аудит сайта и дам список правок по приоритету.