вторник, 6 августа 2019 г.

Неканонический canonical

4 июля 2019 года в блоге разработчиков Яндекса появилась заметка «Неканонические страницы в Поиске», в которой разработчики поисковой системы поведали о своем новом отношении к директиве canonical. Теперь они собираются выполнять ее только в том случае, если страница, которая ее содержит, несущественно отличается о той, которая указана в этой директиве как каноническая.
К слову сказать, Google также может проигнорировать директиву canonical, если содержимое канонической и неканонической страницы существенно различается. Причем я встречал курьезные случаи, когда не согласившись с канонической страницей, выбранной пользователем, Google не смог выбрать каноническую страницу сам, при этом все-таки выкинув неканоническую страницу из индекса:


У директивы canonical есть два неоспоримых преимущества. Во-первых, происходит так называемая консолидация URL, при которой объединяются нетекстовые факторы канонической и неканонической страниц. Так, например, Google в своей «Справке» упоминает об объединении ссылок и переходов. Что касается Яндекса, то о том, что факторы неканонической страницы учитываются для канонической, говорил сотрудник компании Александр Смирнов на Шестой Вебмастерской.
Во-вторых, несмотря на то, что неканоническая страница исключается из поискового индекса, поисковики знают о ссылках, которые на ней находятся, и включают ее в ссылочную структуру сайта. Так, например, собирательный сотрудников службы поддержки Яндекса Платон Щукин высказывался следующим образом: «При этом ссылки на товары, которые находятся на неканонических страницах, также будут известны индексирующему роботу».
Поэтому, на мой взгляд, использование директивы canonical – наиболее предпочтительный инструмент объединения страниц сайта, вписанных в ссылочную структуру сайта, хотя и не самый оптимальный с точки зрения оптимизации краулингового бюджета, о чем я писал в своей предыдущей статье.
Однако теперь с его помощью может не получится объединить страницы, содержание которых существенно различается. Порассуждаем, в каких случаях это может произойти.
Первое, что приходит в голову – это дубликаты одной и той же страницы с динамическим контентом, расположенные на разных URL. Поисковые боты сканируют эти URL в разные моменты времени и получают различный контент. В итоге в индексе может накопиться некоторое количество копий по сути одной и той же страницы.
Если URL дубликатов отличаются от канонического URL только наличием get-параметров, то для Яндекса можно воспользоваться директивой Clean-Param в файле robots.txt. Но этот метод не является универсальным, т.к. Google эту директиву не поддерживает. В случае Google можно будет воспользоваться инструментом «Параметры URL» в Google Search Console. Однако поисковые машины не уточняют, будет ли в данном случае происходить консолидация URL без параметров и URL с параметрами, сканирование которых запрещается. Поэтому данный способ я бы предпочел применять только в крайнем случае.
Консолидация URL произойдет, если поисковому роботу при посещении неканонической страницы отдать код статуса 301 Moved Permanently с редиректом на каноническую. Причем, обычным пользователям можно показывать неканоническую страницу с кодом статуса 200 ОК. Нарушением с точки зрения поисковых систем это не будет. Криминал возникает там, где поисковику показывают содержимое, отличное от того, что получает пользователь.  Здесь же поисковик не будет получать никакого содержимого.
Однако в отличие от директивы canonical, в данном случае у поисковика не будет информации о ссылках, ведущих с неканонической страницы. Поэтому данный метод я рекомендую использовать в тех случаях, когда неканонические страницы не вписаны в ссылочную структуру сайта, например, для страниц с get-параметрами в URL, не влияющими на ее содержимое – utm-метки, идентификаторы сессии. 
В случае же, когда неканоническая страница является достаточно важным элементом ссылочной структуры сайта, например, страницы пагинации или страницы с результатами фильтрации, то демонстрация поисковому роботу кода статуса 301, на мой взгляд, не будет оптимальным решением.
Так же как и практикуемый некоторыми SEO-специалистами способ, который заключается в размещении на странице мета-тега robots со значением ”noindex, follow”. В данном случае поисковик получит информацию о содержащихся на страницах ссылках, но исключит эту страницу из индекса без консолидации с каноническим URL. Да и к тому же со временем и информация о ссылках может перестать учитываться
Итого результаты анализа можно свести в небольшую таблицу:
Способ
Консолидация
Учет ссылок
canonical
+
+
Clean-Param / Инструмент «Параметры URL»
?
-
301 для ботов
+
-
<meta name="robots" content="noindex, follow">
-
+

Таким образом достойной альтернативы директиве canonical для страниц, вписанных в структуру сайту, не просматривается.  Остается только надеяться, что поисковик, проигнорировав эту директиву из-за существенных различий содержимого неканонической страницы с содержимым страницы, указанной как каноническая, будет считать в этом случае страницу действительно качественной. И что такие страницы не будут впоследствии удаляться из индекса как некачественные без консолидации URL и учёта ссылок с них, да еще и с негативным вкладом в «карму сайта». 

Blog Archive

Технологии Blogger.