SEO для малого бизнеса

Канонические ссылки rel canonical: где ставить и зачем

Как работает rel canonical, какие проблемы решает на маленьком сайте, и где её обязательно ставить, чтобы не получить дубли в индексе.

обновлено 8 минут чтения 2 Дмитрий Акиндинов
Содержание
  1. Что вообще делает canonical
  2. Какие проблемы решает
  3. Когда НЕ ставить canonical
  4. Как ставить в популярных CMS
  5. Как проверить, что у вас всё правильно
  6. Какие ошибки встречаются регулярно
  7. Canonical и пенальти
  8. Canonical для PDF и других форматов
  9. Чек-лист по canonical
  10. Куда дальше
  11. Частые вопросы

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

<link rel="canonical"> это маленький тег в <head> страницы, который говорит поисковику: «эта страница ссылка на основную, индексируйте основную, не меня». Звучит просто, и на практике решает несколько типовых проблем маленького сайта: дубли при разных URL одной страницы, копии страниц с UTM-метками, фильтры и сортировки в каталоге, многоязычные версии.

Я ставлю canonical на каждом клиентском проекте по умолчанию. Ниже разложу, как он работает, где обязательно нужен, какие ошибки в его настройке встречаются и как проверить, что у вас всё правильно.

Оригинальный документ на пьедестале с копиями вокруг

Что вообще делает canonical

Тег выглядит так:

<link rel="canonical" href="https://saitfix.ru/services/wordpress-fix/">

Стоит в <head> каждой страницы. Поисковик читает его и понимает: «эта страница это разновидность основной страницы по указанному URL». В индексе будет участвовать только основная.

Если на странице A canonical указывает на страницу B, поисковик:

  1. Считает, что A и B это одна и та же страница.
  2. Все ссылки на A и B как одну, объединяет ссылочный вес.
  3. Показывает в выдаче только B.
  4. Игнорирует A в плане ранжирования.

Это сильный инструмент. Но если использовать неправильно, можно «выпилить» из индекса нужные страницы.

Какие проблемы решает

Несколько классических сценариев, в которых canonical обязателен.

URL с параметрами и без

Часто одна страница доступна по нескольким URL:

  • https://saitfix.ru/services/
  • https://saitfix.ru/services/?utm_source=yandex&utm_campaign=brand
  • https://saitfix.ru/services/?ref=tg
  • https://saitfix.ru/services/?fbclid=xxx

Без canonical поисковик может проиндексировать каждый вариант как отдельную страницу. В индексе появятся 4 копии одной и той же страницы, ссылочный вес делится, ранжирование падает.

С canonical:

<link rel="canonical" href="https://saitfix.ru/services/">

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

Дубли с www и без www

Сайт может быть доступен по https://saitfix.ru/ и https://www.saitfix.ru/. В правильной настройке один из вариантов 301-редиректит на другой. Если редиректа нет (что я регулярно вижу на старых сайтах), canonical спасает:

<link rel="canonical" href="https://saitfix.ru/">

Но лучше ставить и редирект, и canonical. Это две меры защиты.

Дубли с http и https

То же самое для протокола. Должен быть 301-редирект http → https, плюс canonical на https.

Дубли с trailing slash и без

/services/ против /services. Apache по умолчанию не редиректит между ними. Без canonical и редиректа возможны дубли. Решение: либо настроить редирект, либо canonical, либо оба сразу.

Категории и фильтры в каталоге

В интернет-магазине один товар может появляться в нескольких категориях:

  • /catalog/electronics/laptop-asus-x515.html
  • /catalog/sale/laptop-asus-x515.html
  • /catalog/popular/laptop-asus-x515.html

Каждый из этих URL это «дубль» одного товара. Canonical ставит главный URL:

<link rel="canonical" href="https://shop.ru/catalog/electronics/laptop-asus-x515.html">

Все варианты ссылаются на один.

Аналогично с фильтрами: ?color=red, ?sort=price-asc, ?page=2 все они часто канонизируются на основную страницу категории.

Пагинация

Страницы пагинации (?page=2, ?page=3) это сложный случай. В 2026 году Google и Яндекс рекомендуют:

  • Не ставить canonical на первую страницу с пагинации (раньше было можно, сейчас нет).
  • Использовать rel="next" и rel="prev" для связи между страницами.
<!-- На странице ?page=2 -->
<link rel="canonical" href="https://shop.ru/catalog/?page=2">
<link rel="prev" href="https://shop.ru/catalog/">
<link rel="next" href="https://shop.ru/catalog/?page=3">

Каждая страница имеет canonical на саму себя, плюс связи с соседями.

Сессии и идентификаторы

Старые сайты на PHP иногда добавляют в URL PHPSESSID:

  • https://oldsite.ru/page.html?PHPSESSID=abc123
  • https://oldsite.ru/page.html?PHPSESSID=def456

Это бесконечные дубли. Canonical:

<link rel="canonical" href="https://oldsite.ru/page.html">

Обычно лучше отключить session-в-URL в коде, но canonical как вторая защита полезен.

Когда НЕ ставить canonical

Несколько случаев, когда canonical вредит.

На уникальную страницу

Если страница уникальна и не имеет дублей, canonical, указывающий на неё саму:

<link rel="canonical" href="https://saitfix.ru/services/">

Это нормально и безвредно (это «self-canonical»). Но если поставить canonical на ДРУГУЮ страницу, текущая выпадет из индекса.

На пагинацию (как раньше)

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

Правильно: каждая страница пагинации имеет self-canonical.

На страницу-аналог в другом языке

Для многоязычных версий есть специальный механизм hreflang:

<link rel="alternate" hreflang="ru" href="https://saitfix.ru/services/">
<link rel="alternate" hreflang="en" href="https://saitfix.ru/en/services/">
<link rel="alternate" hreflang="x-default" href="https://saitfix.ru/services/">

Не нужно ставить canonical с английской версии на русскую, или наоборот. Это разные страницы, обе должны индексироваться.

На редирект

Если страница A редиректится 301 на страницу B, canonical не нужен (редирект решает проблему сам). Если поставить canonical с A на B при наличии редиректа, поисковик может запутаться.

На несуществующую страницу

Если canonical указывает на 404, поисковик игнорирует тег и оставляет всё как есть. Не страшно, но это технический мусор. Стоит почистить.

Как ставить в популярных CMS

WordPress

WordPress по умолчанию ставит canonical на все страницы. Это обычно правильно, но:

  • Yoast SEO или Rank Math позволяют переопределить canonical для конкретной страницы. Например, если на странице есть очень похожий контент с другой, можно вручную указать canonical.
  • Дубль URL с / и без / WordPress решает редиректом, canonical там и так на правильной версии.

Что я делаю на каждом WP-сайте:

  1. Устанавливаю Yoast SEO.
  2. Проверяю, что в Search Appearance → Advanced стоит правильный canonical.
  3. На страницах фильтров (если есть) явно прописываю canonical вручную.
  4. Проверяю в Search Console, что нет дублей в индексе.

Битрикс

Битрикс из коробки canonical не ставит. Нужно либо использовать модуль (например, «Канонические URL для Битрикс»), либо прописывать руками в шаблонах:

$APPLICATION->AddHeadString('<link rel="canonical" href="' . $canonicalUrl . '">');

Где $canonicalUrl это правильный URL текущей страницы. На страницах фильтров и сортировок дополнительно проверяем, какой URL должен быть основным.

OpenCart

В OpenCart 4.x canonical есть в шаблоне категории и товара по умолчанию. Если что-то не работает, проверяем /catalog/view/template/product/category.twig и /product.twig.

Astro

В Astro я обычно использую компонент SEO, который генерирует canonical автоматически:

<link rel="canonical" href={`https://saitfix.ru${Astro.url.pathname}`}>

Подробно у нас в src/components/seo/SEO.astro.

Поисковый паук смотрит и идёт по канонической нити

Как проверить, что у вас всё правильно

Несколько способов проверки.

Просмотр исходного кода страницы

Открываем страницу, View Source (Ctrl+U), ищем <link rel="canonical". Должен быть и указывать на правильный URL.

Через DevTools

F12 → Elements → Ctrl+F → "canonical". Видите тег.

Через curl

curl -s https://saitfix.ru/ | grep -i canonical

Через Search Console и Yandex Webmaster

В Search Console: Indexing → Pages → Canonical not selected by user / Canonical is different. Видите страницы, на которых canonical у вас не совпадает с тем, что Google выбрал бы сам.

В Webmaster: «Индексирование → Страницы в поиске». Если видите много дублей одной страницы, скорее всего проблема в canonical.

Через краулер

Screaming Frog SEO Spider, Sitebulb, Netpeak Spider все они показывают canonical для каждой страницы и предупреждают о проблемах: пустой canonical, на 404, на редирект, на другой домен.

Я гоняю Screaming Frog на каждом клиенте раз в квартал, ловит много мусора.

Какие ошибки встречаются регулярно

Самые частые проблемы, которые я разбирал у клиентов.

Canonical на главную со всех страниц

Когда-то админ настроил canonical на главный URL для всего сайта. В индексе пропали все внутренние страницы. Признак: в Search Console «Indexed, not submitted» падает с тысячи страниц до 1.

Лечение: убрать ошибочный canonical, заменить на self-canonical для каждой страницы.

Canonical с http на https при редиректе

Сайт редиректит http → https, но canonical на каждой странице указывает на http-версию. Поисковик путается: то ли редирект, то ли canonical, неясно, что правда.

Лечение: переписать canonical на https.

Canonical на абсолютный URL без указания протокола

<link rel="canonical" href="//saitfix.ru/services/">

Это валидный синтаксис, но Google рекомендует указывать полный URL с протоколом. Меняем на https://saitfix.ru/services/.

Canonical на неканоническую версию URL

Главная доступна как https://saitfix.ru/ и https://saitfix.ru/index.html. Canonical стоит на index.html. Поисковик индексирует index.html, а не «чистый» URL.

Лечение: canonical на https://saitfix.ru/, плюс редирект index.html → /.

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

В шаблоне случайно прописали canonical, и плагин SEO тоже добавил. Получается два тега. Поисковик берёт один из них (обычно первый), второй игнорирует. Иногда это даёт неожиданный результат.

Лечение: один canonical на странице.

Canonical и пенальти

Canonical не наказание для страницы. Поисковик не считает, что у вас «плохой контент» из-за canonical. Это техническая директива, ничего больше.

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

Canonical для PDF и других форматов

Если у вас есть PDF-документ (политика конфиденциальности, прайс), который дублирует HTML-страницу, поисковик может ранжировать PDF выше или ниже, чем хочется.

Решение: на HTML-странице указать canonical на PDF (или наоборот), плюс в HTTP-заголовке PDF указать canonical:

Link: <https://saitfix.ru/privacy/>; rel="canonical"

В Apache настраивается через .htaccess:

<Files "privacy.pdf">
    Header set Link '<https://saitfix.ru/privacy/>; rel="canonical"'
</Files>

Это редкий случай, но иногда полезно.

URL-штамп припечатывает страницы

Чек-лист по canonical

Что проверить на любом сайте:

  1. На каждой странице есть <link rel="canonical"> в head.
  2. Canonical указывает на полный URL с https и доменом.
  3. Self-canonical (страница ссылается на саму себя), если у неё нет дублей.
  4. Параметры URL (UTM, ref, fbclid) канонизируются на чистый URL.
  5. Главная не имеет дублей с www/без www, http/https, /index.html.
  6. Категории каталога канонизируются правильно при фильтрах и сортировках.
  7. Пагинация имеет self-canonical, плюс rel=prev/next.
  8. Многоязычные версии связаны через hreflang, не canonical.
  9. 404-страницы и редиректы не содержат canonical.
  10. В Search Console и Webmaster нет ошибок canonical.

Раз в квартал гоняйте Screaming Frog или похожий краулер по сайту, и проблемы быстро видны.

Куда дальше

Связанные материалы: Дубли страниц: как найти и закрыть от индексации, Карта сайта sitemap.xml, Robots.txt для WordPress 2026.

Если хотите проверить canonical и другие технические SEO-аспекты на своём сайте, заявка через форму на главной. Запущу аудит, пришлю список ошибок и приоритеты исправления.

Частые вопросы

Зачем нужен rel canonical

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

Куда ставить canonical

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

Когда canonical ставить нельзя

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

Что делать, если поисковик игнорирует canonical

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

Передайте техническую часть в надёжные руки.

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

Короткие вопросы по теме

Все вопросы по теме "SEO для малого бизнеса"

Заявка

Обсудим задачу

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

Куда удобнее ответить?