Поддержка Проблемы и решения Несуществующие страницы отдают 200 вместо 404

  • Здравствуйте!
    Есть проблема с возвратом кода ответа сервера 404 для несуществующих страниц сайта.
    Сайт WP+Woocommerce. На странице категорий типа https://pionbouton.com.ua/product-category/buket-nevesty/ если после /product-category/ добавить любой символ (например: /product-category/breddd/buket-nevesty/) получим дубль страницы и он будет отдавать 200 ответ вместо 404. Так образом можно сгенерировать любое количество дублей уже существующих страниц, что является большой проблемой для SEO.

    Такие страницы открыты для индексации и закрывать их от индексации через robots вариант неэффективный.

    Вместе с несуществующей страницей генерируется и неверный канонический урл.

    Редирект не лучший способ решения проблемы, нужно чтоб несуществующие страницы отдавали 404 ответ.

    Что было проделано:
    — отключались все плагины;
    — убирались все изменения внесенные в functions.php;
    — безрезультатно убиралась /product-category/.

    Подскажите, пожалуйста, в какую сторону копать. Как можно решить проблему.

Просмотр 15 ответов — с 1 по 15 (всего 16)
  • anonymized-17844177

    (@anonymized-17844177)

    weboost9, привет.

    В файле 404.php дочерней темы перед get_header(); можете добавить status_header(404);. Ну или вариант «грубее»: header("HTTP/1.0 404 Not Found");.

    Ещё вариант: добавить в файл functions.php дочерней темы (или в функциональный плагин)

    function status_check_404(){
    	if( is_404() ) {status_header(404);}
    }
    add_action( 'wp_head', 'status_check_404');

    @vladvector, увы не один вариант не сработал (

    вам не все равно?
    canonical все равно на правильную страницу показывает.

    @flector, нет.
    Во-первых если пойти дальше по пагинации то каноникал уже неверный.
    Во вторых напрасный расход краулингового бюджета

    какого бюджета?

    краулингового бюджета

    Даже спрашивать боюсь, что это за хрень…..

    погуглите, это seo-шный термин.

    это seo-шный термин.

    Я так и подозревал, что это очередной развод простаков на бабло……….

    Походу по делу только один человек может ответить.

    Дык дела-то никакого и нет…. есть загаживание мозга сео-маразмом.

    погуглил.

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

    вы правда думаете, что кто-то от балды будет «сочинять» вам тысячи и десятки тысяч ссылок с неправильными урлами, чтобы испортить вам этот «краулинговый» бюджет?

    как бы сами по себе поисковики выдумывать урлы не будут.

    Модератор Yuri

    (@yube)

    кто-то от балды будет «сочинять» вам тысячи и десятки тысяч ссылок

    Вообще-то, могут.

    поисковики выдумывать урлы не будут

    Есть мнение, что и такое бывает.

    Прикол в том, что для того, чтобы получить 404, краулер все равно должен зайти на сайт и прочитать документ.

    Вообще-то, могут.

    Да, согласен — кругом враги.

    Есть мнение, что и такое бывает.

    Говорят, что у них ТАМ по целому отделу на каждый существующий сайт организован.

    anonymized-14765447

    (@anonymized-14765447)

    flector,

    вы правда думаете, что кто-то от балды будет «сочинять» вам тысячи и десятки тысяч ссылок с неправильными урлами, чтобы испортить вам этот «краулинговый» бюджет?

    как бы сами по себе поисковики выдумывать урлы не будут.

    Вот, кстати, аналогичная тема на форуме была.

    weboost9,

    На странице категорий типа https://pionbouton.com.ua/product-category/buket-nevesty/ если после /product-category/ добавить любой символ … получим дубль страницы и он будет отдавать 200 ответ вместо 404.

    Довольно известный момент, и работает он не только для /product-category/, пример: https://pionbouton.com.ua/category/exmi/exmi/exmi/blog/ вовзращает Status Code: 200 OK.

    Из методов, что практикуются для устранения этого нюанса:
    1 — плагин Yoast SEO (/wp-admin/admin.php?page=wpseo_titles#top#taxonomies > URL рубрик > Удалить префиксы рубрик > переключаем на «Убрать» и сохраняем результат);
    2 — /wp-admin/options-permalink.php > Префикс для рубрик > поставить там точку . > сохранить результат (как помню, в некоторых случаях ломалась пагинация);
    3 — использовать плагин Remove Category URL;
    4 — через .htaccess (но это уже могучий костыль).

    Прикол в том, что для того, чтобы получить 404, краулер все равно должен зайти на сайт и прочитать документ.

    Верно, только в случае 404 бот уткнется в одну страницу, а в случае 200 пойдет ходить по пагинации и другим ссылкам.

Просмотр 15 ответов — с 1 по 15 (всего 16)
  • Тема «Несуществующие страницы отдают 200 вместо 404» закрыта для новых ответов.