Найдены страницы-дубли с GET-параметрами в Яндекс Вебмастер [Clean-Param]

Просмотров: 17424Комментарии: 1

Не так давно Яндекс внедрил данный функционал, и тут от особо одаренных полились советы как из рога изобилия. Необходимо сделать разъяснения.

Вступление

Начать стоит с изучения вопроса Что такое get-параметры.

Фабула

В панели ошибка именуется "Найдены страницы-дубли с GET-параметрами", имеет статус Критичная.

В пояснении говорится

Некоторые страницы с GET-параметрами в URL дублируют содержимое других страниц (без GET-параметров). Например, https://example.com/tovary?from=mainpage дублирует https://example.com/tovary. Из-за их обхода информация о важных для вас страницах может медленнее передаваться в поисковую базу, что может влиять на состояние сайта в поиске.
Посмотрите примеры. Если в поиске есть дубли из-за GET-параметров, рекомендуем использовать директиву Clean-param в robots.txt, чтобы робот игнорировал незначащие GET-параметры и объединил все сигналы со страниц-копий на основной странице. Когда робот узнает о внесенных изменениях, страницы с незначащими GET-параметрами пропадут из поиска.

Незначащие GET-параметры

Что же такое "незначащие GET-параметры"?

Для того чтобы это узнать, не нужно далеко ходить. В том же пояснении идет ссылка на справку. Где всё доходчиво и многократно пояснено:

Используйте директиву Clean-param, если адреса страниц сайта содержат GET-параметры (например, идентификаторы сессий, пользователей) или метки (например, UTM), которые не влияют на их содержимое.
Новый параметр, не влияющий на контент страницы, может привести к появлению страниц-дублей, которые не должны попасть в поиск.
Например, на сайте есть страницы:
www.example.com/some_dir/get_book.pl?ref=site_1&book_id=123
www.example.com/some_dir/get_book.pl?ref=site_2&book_id=123
www.example.com/some_dir/get_book.pl?ref=site_3&book_id=123

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

робот Яндекса сведет все адреса страницы к одному:
www.example.com/some_dir/get_book.pl?book_id=123

в данном примере ref не меняет содержимое (незначащий GET-параметр), а book_id меняет (является значащим), соответственно первый можно добавить в Clean-param, второй категорически нельзя.

Не редко можно встретить ситуацию где из-за одной страницы, на которой Get-параметр действительно не меняет содержимое, Яндекс считает что он не меняет ничего на всех страницах где присутствует, хотя это не так. Например если в категории 5 товаров, при использовании параметра limit, кол-во выводимых позиций не увеличится, т.к. просто больше нет товаров.

Clean-param - принцип работы

Поисковый робот Яндекса при анализе URL отсекает из адреса, заданные в robots.txt GET-параметры. Получившийся адрес сканируется и при условии что страница доступна (ну и естественно является достаточно качественной) она попадает в выдачу, а все ёё дубли с дополнительными GET-параметрами будут с ней склеены.

О чем и говорится в справке:

Если на сайте доступна такая страница, именно она будет участвовать в результатах поиска.

Что же произойдёт если конечный адрес недоступен? Тут варианта два:

  • из поиска выкинет всё
  • Clean-param будет игнорироваться

Вредные советы

Давайте рассмотрим такой случай. На каком-нибудь форуме, не особо способный думать человек, посоветовал добавить в Clean-param что попало.

Например на сайте есть страницы:

index.php?route=product/category&path=* (категории)
index.php?route=product/product&product_id=* (товары)
index.php?route=product/manufacturer/info&manufacturer_id=* (производители)

И вам с умным видом сказали "Сделай Clean-param: path|product_id|manufacturer_id|... , я так всегда делаю".

В результате бот прочитает это и сочтет что всё множество категорий, товаров и производителей надо свести к виду:

index.php?route=product/category
index.php?route=product/product
index.php?route=product/manufacturer/info

Что в буквальном смысле обозначает "выкинуть всё из индекса и попытаться проиндексировать три битые страницы", т.к. они без id сущности в адресе будут отдавать ошибку 404.

А особо упоротые предлагают еще добавить параметр route в Clean-param, тем самым свести всё это к

/index.php

Clean-param здорового человека

Итак, порядок действий адекватного разумного человека:

  • определить значение GET-параметра, меняет ли он содержимое
  • определить какой будет конечный адрес без всех незначащих GET-параметров, проверить доступность и убедиться что содержимое идентично
  • убедиться что конечный адрес сам не является дублем другой страницы и именно он должен индексироваться (очень важно)

... и тут последний пункт нас подводит к одному из основных нюансов, о котором ниже. ↓

Clean-param не нужен

Данный функционал внедрен в Яндекс.Вебмастер недавно и является очень сырым. Часто Clean-param вообще не нужен. Кривой анализ не способен оценить верно те случаи, когда страницу требуется склеить с использованием редиректа.

Наиболее часто редирект требуется если страница без ЧПУ является дублем страницы с ЧПУ. При этом важно убедиться что редирект имеет код 301.

Clean-param не может заменять редирект. Лишь иногда может быть урезанным аналогом атрибута canonical, при этом нося превентивный характер, что дает в определенных ситуациях некий плюс.

Может возникнуть вопрос: Зачем тогда нужен Clean-param, если проще сделать редирект? В двух случаях.

  • CMS генерирует кучу мусора в url и нет технической возможности его убрать на этапе формирования.
  • нужно сохранять в адресе идентификаторы сессий, пользователей, метки отслеживания, ...

А Гугл учитывает?

Нет!

Но есть небольшой секрет: там имеется свой аналогичный функционал. Тык

Вывод

  • Clean-param может использоваться только в случае если редирект невозможен (нужно сохранить в адресе идентификаторы сессий, пользователей, метки).
  • Прежде чем добавлять GET-параметр в Clean-param нужно чётко понимать за что он отвечает и убедиться что он не влияет на содержимое.
  • + понимать каким получится адрес без GET-параметров, и что именно его должен индексировать Яндекс.
  • Такие ситуации - еще один аргумент в пользу использования ЧПУ (важно заполнение с самого начала).

Комментариев: 1

Оставьте комментарий!
  • Без регистрации
  • Вход/Регистрация

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

Вы можете войти под своим логином или зарегистрироваться на сайте.

grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

  • 1johser21-02-2023 13:15Учитываю...

    Статья - огонь! Полезный огонь.