Что такое канонический url адрес. Канонические ссылки как метод борьбы с дублированием контента. Как с помощью атрибута rel=«canonical» убрать дублированный контент

Привет, друзья. Пора бы мне уже довести до логического завершения тему про управление индексацией сайта. Я вам напомню, какие методы управления индексацией вообще существуют: файл robots.txt, мета-тег robots, заголовок X-Robots-Tag, ну и 301-редирект здесь можно упомянуть, как метод борьбы с дублями, что так же является неотъемлемой частью качественной индексации. И обо всем этом я вам уже рассказывал, но есть еще один очень важный и интересный способ борьбы с дублями, в чем-то альтернатива редиректу, это атрибут rel="canonical" , который присваивается тегу link и располагается в части любой html-страницы.

Выглядит это как-то так:

Что немаловажно – данный тег поддерживается всеми поисковыми системами , в том числе нашими любимыми Яндекс и Google.

Итак, сегодня я вам расскажу, как и для чего нужно использовать тег rel canonical , в каких ситуациях он действительно эффективен, а заодно убедимся в этой самой эффективности на реальном эксперименте. Приготовьтесь:)

Для начала напомню вам о тех постах, что я затронул в начале:

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

Теория и справка от поисковых систем

Привожу ссылки на официальную позицию поисковых систем: Google об атрибуте rel="canonical" и Яндекс про атрибут rel="canonical" тега . Разумеется, и mail.ru тут как тут – про значение canonical в теге — не могли же они отстать от Яндекса, но это и хорошо, все под копирку, нам же проще.

Что такое каноническая страница? Это рекомендуемый экземпляр из набора страниц с очень похожим содержанием.

Зачем нужно указывать каноническую страницу? Если поисковая система видит, что страницы очень похожи или одинаковы, то согласно алгоритмам в результатах поиска появится только одна предпочтительная страница, которая, по мнению поисковой системы, лучше всего отвечает на запрос пользователя.

А как мы знаем, поисковик не всегда угадывает наши желания, потому лучше перестраховаться и указать нужную страницу самостоятельно. Сделать это можно добавив ссылку rel="canonical" в раздел неканонических версий всех страниц HTML.

Еще оказывается, можно указывать каноническую ссылку для не HTML содержимого , а, например, для pdf, doc или других файлов при помощи заголовков. Типа как X-Robots-Tag HTTP header, только тут будет Link HTTP header. Но это уже совсем для гик-маньяков, так что рассказывать об этом не буду.

Что будет, если атрибут rel="canonical" указывает на несуществующую страницу? А если каноническими назначено несколько страниц набора? В этом случае поисковая система просто проигнорирует данные правила и будет поступать, как и раньше — вычислять подходящий экземпляр из набора страниц согласно алгоритмам.

Можно ли использовать атрибут rel="canonical" для указания канонического URL на другом домене? Можно, но не нужно. Важно понимать, что атрибут canonical это всего лишь подсказка или рекомендация, а не строгое правило в отличие от редиректа, который и стоит использовать в данном случае.

На основании всего вышенаписанного, а так же по информации из других официальных источников (блоги поисковых систем и блоги их сотрудников) можно сделать выводы о том, что тег link rel="canonical":

  • Это рекомендация, а не правило, а потому может быть проигнорирован в следующих случаях:
    • Документ по каноническому адресу не существует, отдает ответ 404;
    • Каноническая страница закрыта от индексации в robots.txt или мета-тегом;
    • В html-коде страницы указано сразу несколько атрибутов rel canonical;
    • Адрес канонического документа указывает на другой домен или поддомен;
    • Присутствует цепочка назначений rel="canonical", т.е. для документа А каноническим указан документ Б, а в это время для документа Б указан каноническим документ В;
  • Необходимо указывать только для дублирующих или очень схожих страниц, а не для склейки двух разных страниц или передачи веса;
  • Адрес канонической страницы может указывать сам на себя;
  • Поддерживается всеми поисковыми системами: в Яндексе с 23 мая 2011 года, в Google с 12 февраля 2009.

Практическое применение и эксперимент

Все, с теорией покончено, теперь я вам расскажу, зачем и для чего я использую тег rel="canonical" на своих сайтах. Главное и основное – это борьба и предупреждение появления дублей. В основном это дубли, связанные с параметрами или метками в url. Не всегда уместно бороться с этими проблемами . Метки иногда очень важны, например, когда ведется кампания в контексте и в метках передаются важные статистические сведения, да и много еще чего можно отслеживать метками. Закрывать такие адреса в robots.txt мне не по душе, использовать мета роботс не получится, а редирект уничтожит все данные.

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

Это все понятно. Но вот только о самом главном для нас seo’шников нигде не сказано – а как дела обстоят с передачей ссылочного веса? Что если на неканонический адрес стоят ссылки, что же будет с канонической страницей, получит ли она от этого бонусы? А если сперва появилась ссылка, а rel="canonical" был указан позже? А что будет, если все наоборот?

Вопросов много, а официальных комментариев нет. На вопросы кто виноват и что делать, ответ один – надо ставить эксперимент! Хотел я такой эксперимент поставить, но оказалось, что его уже не так давно провел Игорь, автор блога bakalov.info , за что ему огромное спасибо.

Вот цитата с его блога о том, какова цель, какие варианты развития событий и ожидаемый результат:

Цель эксперимента: выяснить, будет ли передан «вес ссылки» со страницу А на страницу С, в том случае, если страница А ссылается на страницу Б, а на странице Б стоит rel="canonical", который указывает, что канонической страницей является страница С.

Вариант №1. Страница А ссылается на страницу Б и эта ссылка проиндексирована поисковыми системами. Через некоторое время на странице Б устанавливается rel="canonical", который указывает, что канонической является страница С, что в итоге приводит к исключению страницы Б из индекса.

Вариант №2. На странице Б устанавливается rel="canonical", который указывает, что канонической является страница С, что приводит к исключению страницы Б из индекса. Через некоторое время после этого со страницы А на страницу Б устанавливается ссылка.

Необходимо выяснить в каком из двух вариантов будет передан «вес ссылки» со страницы А на страницу С. Под «весом ссылки» я понимаю так называемый «анкорный вес», т.е. если страница акцептор ищется по тексту стоящей на нее ссылки, то считаем, что «вес ссылки» передается, если не ищется, то не передается.

Полное описание и ход эксперимента .

Я же сообщу результаты эксперимента и выводы:

Для Яндекса не имеет значения, что появилось раньше – rel="canonical", или внешняя ссылка – в любом случае «вес ссылки» будет передан с неканонического URL на канонический.

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

Короче, все работает!

В очередной раз обобщая всю информацию изложенную в посте, хочу сказать, что использовать тег link rel="canonical" нужно . В первую очередь это отличный способ предотвратить дублирование контента (особенно это касается ошибок и недоработок большинства CMS) и наложение санкций за это со стороны поисковых систем.

Удачи вам, друзья! Оставляйте комментарии и задавайте вопросы.

Поисковые системы очень негативно относятся к дублированию контента и постоянно борются с этой проблемой. Уникальность контента - основная его ценность, и за копии можно легко попасть под санкции. Чтобы этого избежать, можно использовать несколько методов борьбы с дублями. В этой статье разберем один из них - канонические URL.

Существует несколько причин образования дублей, например, CMS могут создавать дополнительные копии, где страница доступна по адресу с www и без. Особенно часто копии возникают в интернет-магазинах, где страницы товара отличаются только фотографией.

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

Канонический URL в борьбе с дублями.

Допустим, есть несколько адресов, ведущих на одну и ту же страницу:

  • mysite.ru/main
  • mysite.ru/blog/2364
  • mysite.ru/blog/page?id=2364

Если мы хотим индексировать только одну из них, необходимо использовать атрибут rel=canonical .

Например, если основной является страница - mysite.ru/main, тогда в коде двух других появится строчка:

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

Злоупотреблять атрибутом rel=canonical также не стоит. Встречались сайты, которые теряли позиции в результатах поиска после того, как разработчики ошибочно записывали в rel=canonical всех страниц сайта одинаковый url.

Как правильно использовать канонические урлы?

  • Выберите основную страницу (каноническую).
  • Используйте атрибут rel=canonical для указания на нее с других страниц - дублей. Важно прописывать абсолютные пути: http:// mysite.ru/blog/page?id=2364, а не /blog/page?id=2364.
  • Укажите канонические страницы в файле Sitemap.xml. Это не гарантирует правильную индексацию, но поможет поисковому роботу определить, какие страницы нужно считать основными.

В чем разница между канонической ссылкой и 301-редирект?

Различие в принципе их действия. Атрибут rel=canonical показывает поисковой системе, какую страницу нужно индексировать и отображать в поиске. Остальные страницы не ранжируются, но на сайте пользователю видны. При использовании 301-редирект, вас автоматически перенаправляют на основную страницу. Если рассматривать с позиции передачи веса, то оба варианта будут передавать определенную часть веса канонической странице.

Одновременное использование rel=canonical и 301-редирект может оказаться плохой идеей. Мы говорим о тех случаях, когда вы указываете на страницу, как на каноническую, перенаправляя с нее, в свою очередь, на другую 301-редиректом. Скорее всего, поисковый робот посчитает это ошибкой. Возможно, передаваемый вес потеряется внутри этой цепи, что приведет к потере позиций в выдаче. Лучше не соединять канонические ссылки в цепь, а использовать только в пределах одного шага до основной страницы.

И еще несколько правил

  • Не закрывайте канонические URL в файле robots.txt.
  • Следите, чтобы основной адрес в Sitemap.xml и в rel=canonical совпадали.
  • На странице может быть указана только одна каноническая.
  • Не стоит указывать канонической страницу с другого домена.

Использование канонических URL не обязательное правило. Но если у вас есть дублированный контент, лучше решить эту проблему самостоятельно. Иначе поисковая система решит ее по-своему.

Если ваш сайт имеет идентичный или очень похожий контент, доступный по разным URL , тогда новый формат позволит указать тот URL , который должен возвращаться в поисковой системе. Также можно быть уверенным, что все характеристики, такие как ссылочный вес и т.д. передадутся на нужную версию адреса.

Теперь вы можете добавить этот тег, для указания вашей версии адреса, внутри тега на страницах с дублированным контентом:

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

Подобный тег будет полезным в основном при использовании различных движков (phpBB, IPB , WordPress, и т.д., напр. сайту ipbskins.ru – разработка дизайна сайта на IPB , приходится использовать длинный robots.txt в целях избежания дублированного контента), создающих множество похожих страниц, например, это могут быть страницы:

печатной версии статьи:
http://site.ru/article01.html?print=true
текстовой версии статей для моб. телефонов:
http://site.ru/lofiversion/article01.html
дублированные из-за недостатка движка:
http://site.ru/articles/?id=1&category=new
http://site.ru/articles/?id=1&tag=keyword
и ряд других…

Этот стандарт может быть адаптирован любой поисковой машиной при индексации сайта.

Для популярного блог-движка WordPress уже разработан плагин canonical , вставляющий тег на нужные страницы. Другие популярные движки для блогов, форумов, интернет-магазинов и т.д. также в ближайшем будущем расширят свою функциональность (следите за обновлениями).

Ответы на некоторые популярные вопросы по тегу:

Является ли rel=“canonical” подсказкой или директивой?
Это подсказка, которую мы берем во внимание и во взаимодействии с другими сигналами вычисляем наиболее релевантную страницу для отображения в поисковых результатах.

Могу ли я использовать относительный путь для указания canonical, например так: ?
Да, относительные пути распознаются также, как и в обычном теге . Даже если вы введете тег с ссылкой на документ, тогда относительные пути будут считаться в соответствии с базовым URL .

Это нормально, если канонические адреса содержат не полностью дублированный контент?
Мы позволяем небольшие различия, такие как порядок сортировки в таблице продуктов. Также мы понимаем, что канонические адреса могут парситься роботом в разное время, поэтому все это нормально.

Что если rel=“canonical” возвращает 404 ошибку?
Мы продолжим индексировать ваш контент и использовать эвристический подход, для определения канонического адреса, однако, мы рекомендуем, чтобы вы использовали существующие URL в качестве канонических.

Что если rel=“canonical” ещё не проиндексирован?
Мы стараемся достучаться до канонического URL быстро. Как только мы его проиндексируем, тогда сразу же перерассмотрим подсказку rel=“canonical”.

Может ли канонический урл содержать редирект?
Да, вы можете указать редирект, в этом случае поисковая машина обработает просесс перенаправления как обычно и попытается проиндексировать новый адрес.

Что если я имею противоречивые сигналы для rel=“canonical”?
Наши алгоритмы мягкие: мы можем следовать по каноническим цепям, однако, мы настоятельно рекомендуем, чтобы вы на страницах указывали единственный канонический адрес, чтобы быть уверенным в оптимальном результате канонизации.

Может ли этот тег для ссылки предложить канонический адрес на совершенно другом домене?
Нет. Чтобы мигрировать на другой домен, более подходящ. В настоящее время Google поддерживает канонизацию внутри поддоменов или внутри одного домена. Таким образом, владельцы сайтов могут указать www.example.com вместо example.com или help.example.com , однако, не могут указать example.com вместо example-widgets.com .

Звучит интересно, но могу ли я увидеть пример?
Да, wikia.com помогла нам, как трастовый тестер. Например, вы замтетите, что исходный код по адресу http://starwars.wikia.com/wiki/Nelvana_Limited содержит rel=canonical http://starwars.wikia.com/wiki/Nelvana .

Два адреса почти идентичны, исключая то, что Nelvana_Limited, первый URL , содержит короткое сообщение возле заголовка. Это хороший пример использования тега в будущем. С rel=canonical, свойства двух адресов обьединяются и поисковые результаты отображают нужную версию.

Если у вас есть какие-либо вопросы по использованию нового тега, вы можете их задать в комментариях на официальном блоге Google для вебмастеров .

1. Помимо избавления от естественного дублированного контента (из-за недостатка движка), мы также избавляемся от дублированного контента искусственного, когда конкуренты нам пытаются насолить, добавляя в страницы с произвольными параметрами в URL .

2. Теперь нет надобности использовать robots.txt для запрета индексации таких страниц, как “печатная версия” и других дубликатов (напр. в WordPress нужно было закрывать путь /teg/) и угождать каждому поисковику отдельно (есть общие стандарты для robots.txt, но есть также и ряд особенностей работы каждого поисковика с этим файлом, поэтому мы раньше не могли предусмотреть запрет индексации некоторых страниц сразу для всех ботов).

3. Мы теперь имеем хороший инструмент для ускорения индексации сайта 🙂

Канонический тег (rel=”canonical”) является довольно важным инструментом поисковой оптимизации. Зачастую он даже лучше, чем 301 редирект при работе с дублированным контентом.

Разберём более подробно этот тег.

Что плохого в дублированном контенте

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

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

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

С другой стороны, если дублирование происходит на вашем сайте, то тег будет как нельзя кстати. Даже если на вашем сайте будут ссылки на дублированный контент, ценность для выдачи будет составлять только страница-первоисточник. Таким образом, даже при наличии ссылок на несколько дублей, значимой для Google будет считаться только одна из этих страниц. И не пострадает.

Естественно, это не лучшее решение с точки зрения SEO. Но это не приведёт к каким-либо санкциям со стороны Гугла.

Что такое тег rel=”canonical”

Тег имеет следующий синтаксис: Таким образом Google и Bing поймут, что все дубли ссылаются на канонический адрес, указанный в теге. Гугл имеет чёткое представление по поводу использования данного тега:

Да, rel=”canonical” должен использоваться только для выбора предпочитаемой страницы при дублировании (незначительные различия в содержании допустимы).

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

Проблемы дублированного контента

Реализуйте теги надлежащим образом на вашем сайте. Это убережёт вас от проблем дублированного контента, некоторые из которых связаны с системами управления сайтами (CMS):

  1. Tracking Codes . Некоторые системы требуют добавления переменных в конце url-адреса для обратных ссылок на ваш сайт. Формат может быть такой: www.example.com?tracking-variable или такой: www.example.com/example.htm?tracking-code. Проблема заключается в том, что поисковые системы разделяют адреса, даже если те различаются всего одним символом. Хотя Google и Bing и имеют в своём распоряжении технологии, которые помогают определять такие адреса, до сих пор возникает множество ошибок при их обработке. Интересно будет отметить, что некоторые ссылаются на ваш сайт, дабы получить взаимную обратную ссылку, используя данный метод. Канонический тег защитит вас от этого.
  2. Приставки к url . Как мы уже уяснили, любые два адреса, отличающиеся хотя бы одним символом, рассматриваются как отдельные страницы. И есть несколько случаев, когда приставки к адресам могут привести к дублированию контента. К ним относятся, например, дополнительный язык сайта (русская и английская версии страницы) или создание движком дополнительных страниц (ярко выражено в WordPress).
  3. Разбивка на страницы . Это когда сайт разбивается автоматически на несколько страниц с одинаковым контентом. Например, если у вас интернет-магазин и продукцию можно отсортировать по цвету товара или по его цене (при этом для результата сортировки генерируется отдельная страница с одинаковыми описаниями товаров).
  4. WWW . По большей части это не проблема, т.к. Google обычно правильно определяет адреса с www и без. Но до сих пор бывает такое, что поисковик индексирует как бы две версии сайта (example.com и www.example.com). В результате половина вашего контента проиндексирована с www, а другая половина – без www. Обычно это дело прописывается в robot.txt, но и канонический тег тут тоже может помочь.
  5. Если невозможно реализовать 301 редирект . Как ни странно, но в некоторых случаях у веб-мастера нет возможности реализовать 301 редирект, например, из-за ограниченного доступа к серверу. Канонический тег в данном случае является альтернативой, с той лишь разницей, что исходная страница будет продолжать существовать.

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

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

Но, когда мы или не можем использовать 301 редирект, или нам необходимы страницы для просмотра пользователями, то нам на помощь приходит атрибут rel= «canonical».

С помощью этого атрибута можно довольно быстро устранить проблемы дублирующего контента.

Как прописать rel= «canonical»?

На странице сайта (основной способ)

Чтобы для текущей страницы указать ее каноническую ссылку, то в секции нужно прописать следующее:

< link rel= "canonical" href= "http://site.com/canonical-link.html" />

Очень важно прописать именно в секции HEAD, так как если вы случайно пропишите данный атрибут не в этой секции, то данная инструкция будет проигнорированная поисковыми системами.

Через xml-карту сайта

Для каждой страницы в xml-карте сайта вы можете прописать её каноническую ссылку. Но, в данном случае, поисковые системы могут проигнорировать данные рекомендации.

Через ответ сервера (лучше всего для не html документов)

Link: ; rel="canonical".

Link: ; rel="canonical".

Но, следуют учесть, что на данный момент Google поддерживает данный элемент заголовка только для Веб-поиска.

Когда нужно использовать канонические ссылки

Если вы точно знаете в каком случае у вас на сайте появляются дубли

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

Когда сложно или невозможно реализовать 301 редирект

В общем лучше всего использовать 301 редирект, но если это довольно сложно или долго реализовывать, то можно воспользоваться и атрибутом rel=”canonical”. По заявлениям Google, передаваем вес через канонические ссылки абсолютно идентичный весу, который передает 301 редирект.

Несколько страниц для одной серии продуктов

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

При разных сортировках товаров в каталоге

Если на вашем сайте товары можно сортировать разными способами и параметр сортировки указывается в урле:

При создании страницы каталога со всеми продуктами

Каноническая ссылка не является индексируемой

  • страница отдает 200 код сервера
  • на странице нет запрета индексации (через мета тег robots и noindex)

Несколько ссылок rel=canonical с одной страницы

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

Разные канонические URL

Следите за тем, чтобы всегда указывать одни и те же канонические страницы при разной реализации (например, через xml-карту сайта и через rel=”canonical” на самой странице).

Неправильное использование относительных ссылок

В общем случае, при указании канонических ссылок всегда желательно прописывать абсолютные ссылки

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

Проверка использование rel=»canonical» на своем сайте

После того, как вы настроили все канонические ссылки у себя на сайте, то желательно сделать проверку всего сайта на то, как будут видеть эти все инструкции поисковые роботы. Для этого лучше всего воспользоваться программой Screaming Frog SEO Spider.

После индексации вашего сайта эта программа в удобном для вас виде предоставит вам полную информацию по всем страницам

  • на которых стоит атрибут rel=”canonical” и на какие именно страницы он указывает
  • на какие страницы сайта проставлены канонические ссылки
  • какие страницы без атрибута rel=”canonical”

Вся эта информация будет на вкладке Directives

Следует не забыть провести некоторые дополнительные настройки:

1. Убедиться, что на вкладке Basic выставлена галочка напротив Crawl Canonical