Атрибут rel= «canonical» —  полное руководство по использованию канонических ссылок

Атрибут rel= «canonical» — полное руководство по использованию канонических ссылок

Антон Рева
11 января, 2015

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

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

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

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

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

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

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

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

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

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

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

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

Если вам нужно указать канонические ссылки для не html документов, а, например, для pdf-файлов, то можно указать каноническую ссылку в http-заголовке. Для этого, сервер при запросе дублирующего файла должен отдавать следующее

Link: <http://site.com/main-file.pdf>; rel="canonical".

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

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

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

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

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

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

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

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

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

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

http://site.com/dresses.html?sort=price

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

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

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

По рекомендациям Google (https://support.google.com/webmasters/answer/1663744?hl=ru), способ при котором вы со всех страниц каталога вы делаете каноническую ссылку на страницу со всеми товарами/статьями, является оптимальным для индексации как страниц каталога сайта, так и всех товаров/статей сайта. При этом способе, для каждого раздела сайта необходимо создать страницу «Смотреть всё» и с каждой страницы пагинации проставить каноническую ссылку на страницу «Смотреть всё».
rel canonical
Но, это способ довольно сложный в реализации. Поэтому, другие реализации пагинации вы сможете найти по этой ссылке:
https://seoprofy.ua/blog/optimizaciya-sajtov/pagination-for-seo

Страница печати

Если печать страниц на сайте реализована через дополнительный параметр, например,

http://site.com/news-1.html?print=yes

то, необходимо, проставить каноническую ссылку на основную версию страницы

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

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

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

Поэтому, для всех страниц на которые стоят партнерские ссылки

http://site.com/dresses.html?partner=dkfEi3dj1

мы прописываем следующую инструкцию:

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

Кроме этого, вы можете указать Google все не нужные параметры для индексации через Параметры URL (в  Google Webmasters раздел Сканирование). В данном случаем необходимо указать параметр partner, как такой, что не изменяет содержимое страницы.

Для склейки индексного файла каталога

Важно проверять, чтобы файлы в каталоге типа index.html не приводили к дублям: это может произойти, когда открыты для индексации 2 таких адреса http://site.com/dresses/ и http://site.com/dresses/index.html. В таких случаях, для решения данной проблемы, легче всего в файле http://site.com/dresses/index.html прописать такую каноническую ссылку

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

При использовании одинакового контента на разных доменах или разных языковых версиях

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

Основные ошибки при использовании rel=”canonical”

Использование на страницах пагинации

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

Как правильно делать пагинацию для seo смотрите здесь: https://seoprofy.ua/blog/optimizaciya-sajtov/pagination-for-seo.

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

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

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

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

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

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

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

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

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

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

так как при указании с помощью относительных ссылок появляется очень большая вероятность сделать ошибку:

<link rel="canonical" href="site.com/dresses.html" />

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

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

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

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

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

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

rel canonical - seo frog

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

rel canonical - seo frog

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

rel canonical - seo frog

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

2. На вкладке Advanced установлена галочка напротив Respect Canonical

rel canonical - seo frog

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

В заключение

Использование атрибута rel= «canonical» может сэкономить очень много времени на этапе разработки. Но такие решения в итоговом варианте могут привести к проблемам, если не учесть все нюансы использования.

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

Хорошие статьи в продолжение:

Чек лист по SEO для разработчиков

Ответы сервера — практическая методичка

Robots.txt — инструкция для SEO

Оптимизация кода сайта — базовое руководство

Понравилась статья? Получай свежие статьи первым по e-mail

Оцените статью:
совсем плохоплохонормальнохорошокласс (13 оценок, средняя: 4,38 из 5)
Загрузка...
  • Anton

    Виктор, добрый день. У меня к Вам несколько вопросов.

    1. Хочу уточнить относительно пагинации и использования канонических страниц, так как не совсем до конца понял как правильно.

    У меня есть страницы-каталоги с бесконечной подгрузкой страниц (Пример http://www.salegid.com.ua/clothes/women-clothes/). Для робота такие страницы видны как 2,3,4 и так далее. Плагином «All in seo pack» указывается каноника и пагинация по похожей структуре, как Вы описывали в статье про пагинацию.

    Вот пример для второй страницы:
    rel=’prev’ href=’…………./clothes/women-clothes/’
    rel=’next’ href=’……………/clothes/women-clothes/page/3/’
    rel=»canonical» href=»……………/clothes/women-clothes/page/2/»

    Но есть подозрения, что это не правильно, так как у кажется, что на любой станице пагинации, каноническая ссылка должна указываться всегда первой страницей, то есть структура должна быть такой:
    rel=’prev’ href=’…./clothes/women-clothes/предыдущая/’
    rel=’next’ href=’…./clothes/women-clothes/page/следующая/’
    rel=»canonical» href=»http://www.salegid.com.ua/clothes/women-clothes/» — всегда ссылаемся на первую.

    Прав ли я?

    2. Второй вопрос, в случае, если я не прав и все настроено верно. На каждой странице категории и подкатегории есть текст (внизу, но в коде он вверху). При реализованном сейчас способе пагинации и каноники (когда канонической страницей указывается каждая последующая из этой категории, например 2,3,4 и так далее) текст все время остается на своем месте. То есть дублируется и на второй, и на третей, и на десятой канонической странице этой категории. Возможно имеет смысл выводить текст только на первой странице этой категори, а на всех последующих (2,3,…10) его скрывать? Или это не принципиально, еслиь у нас указана пагинация?

    3. И последний вопрос. В пункте «При использовании партнерской программы у вас на сайте» Вы пишите про то, что можно в Google Webmasters указать ненужные параметры при сканировании. Только я немного не понял что это дает, то есть робот не будет сканировать страницу если видит указанный параметр?

    Например у меня есть страница с партнерскими ссылками http://www.salegid.com.ua/skidki-na-kardigany-dlya-zhenshhin-lamoda/ Но ссылки срабатывают через редирект с внутренних страниц, вида: …../shop/?pgo=…..
    Структура /shop/ закрыта в Robots, также таким ссылкам указан атрибут rel=»nofollow». Сейчас зашел в раздел «Сканирование» у меня там есть и параметр shop и параметр pgo, в статусе указано «На усмотрение робота Googlebot», я могу вручную выбрать один из двух параметров (Изменяет ли этот параметр содержание страницы, которое видит пользователь?): Да/Нет.
    Но немного не понял, что будет если я задам «Да» или «Нет». Не могли бы Вы чуть подробнее объяснить по этому пункту и как правильно в моем случае?
    Большое спасибо.

    • Здравствуйте, пост делал не я, а Антон), он вам ответит в самое ближайшее время

      • Anton

        Сорри, не заметил автора. Антон, вопрос к Вам:)

    • Anton Reva

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

      2. Да, показываем только на ПЕРВОЙ страниц серии

      +

      если у вас есть фильтры, то также желательно при выборе фильтра скрывать текст (это, если сами фильтры не индексируются со своими уникальными текстами).

      Бонус:
      делайте тексты для категорий более структурированными:

      используйте подзаголовки , списки, картинки + макс. полезной инфы.

      3. Так, а почему один из двух: выбирайте сразу для двух этих параметров значение «Нет»
      +

      можете не переживать, такие страницы гугл не проиндексировал у вас на сайте: https://www.google.com.ua/search?sourceid=chrome-psyapi2&ion=1&espv=2&ie=UTF-8&q=site%3Awww.salegid.com.ua%2F%20inurl%3Apgo

      • Anton

        Антон, большое спасибо за развернутый ответ!

  • Glaz

    Если в пагинации используется canonical и разметка prev/next, но она закрыта от индексации, это неправильно? Стоит открыть индексацию пагинации?

    • Anton Reva

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

      • <<<если каноникал стоит со всех страниц на первую страницу, то НЕ правильно, это тоже самое, что был бы 301 редирект

        Очень-очень-очень спорное мнение=)
        Практика показывает совершенно другое. Боты НЕ добавляют страницы пагинации в индекс, но ходят по ссылкам на НЕ канонических страницах и такием образом добавляют в индекс все товары на страницах пагинации.

        Утверждать, что такое вариант использования тега rel="canonical" — не правильны, является не совсем корректным с вашей стороны.

        • Anton Reva

          типа да, но, нет ))).
          1. в теории это аналог 301 редиректа, но, только для роботов.
          2. главное, что сам гугл не рекомендует так делать.

          возможно, тут стоит написать, что это не самый правильный вариант.

  • Stepan

    Подскажите что лучше использовать rel=»canonical» или 301 redirect при переходе с http на https ?

    • Думаю, 301 приоритетней в данном случае.

  • Старинный Автомобиль

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

  • Igor Sharaevsky

    Вопрос, нужно ли вообще в карте сайта давать страницы-дубли (»
    rel= «canonical» для каждой страницы в xml-карте») ?

  • а если этого не делать, то получается что вес основных страниц распределяется по похожим страницам ? и если закрыть похожие, то основная может немного подпрыгнуть в поиске?

  • Diana Ziletskaya

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