Всё о канонических тегах: синтаксис, проверка, типичные ошибки. Как работает canonical в Яндексе, почему rel canonical может не работать и как настроить канонические URL для разных типов страниц.
Введение
Canonical — это дорожный знак для поисковика: «Главная версия страницы здесь, а всё остальное — копии». Один тег в head страницы решает проблему дублей и сохраняет краулинговый бюджет. Но при неправильной настройке canonical либо не работает, либо вредит. Канонические петли, битые canonical, конфликт canonical и robots.txt — типичные ошибки, которые тихо убивают индексацию. В этой статье — полное руководство по canonical-тегам: от синтаксиса до поиска и исправления ошибок.
Что такое canonical и как он работает
Canonical — это HTML-тег в секции head, который указывает поисковику канонический (основной) URL страницы. Если одна и та же страница доступна по нескольким адресам (с параметрами, с www и без, через разные категории), canonical говорит: «Индексируй вот этот URL, а остальные считай копиями». Важно: canonical — это рекомендация, а не директива. Поисковик может его проигнорировать, если посчитает, что канонический URL не релевантен или содержит другой контент. В Яндексе canonical работает, но имеет свои особенности. Яндекс уважает canonical, но при расхождении контента на канонической и неканонической версии может выбрать другой URL как основной. Поэтому контент на всех версиях страницы должен совпадать. Подробнее о поиске и исправлении дублей читайте в статье Дубли страниц: как найти, исправить и предотвратить.
Синтаксис canonical: как правильно прописать
Канонический тег размещается в секции head и выглядит так: link rel="canonical" href="https://site.ru/osnovnaya-stranica". Правила корректного canonical. Первое: абсолютный URL. Не относительный (/stranica), а полный с протоколом и доменом. Второе: правильный протокол. Если сайт на HTTPS, canonical должен вести на HTTPS. Третье: без параметров. Канонический URL — чистый, без utm-меток, параметров сортировки и сессионных идентификаторов. Четвёртое: код 200. Канонический URL должен открываться и отдавать 200, а не 404 или 301. Пятое: не закрыт в robots.txt. Если канонический URL заблокирован для обхода, поисковик не сможет его проверить. Шестое: один canonical на страницу. Два тега с разными URL — ошибка. Седьмое: само-канонизация. Каждая страница должна иметь canonical на саму себя, если нет явной причины указывать на другую.
Типичные ошибки canonical
Ошибка первая: каноническая петля. Страница А ссылается на Б, Б ссылается на В, В ссылается на А. Поисковик не понимает, кто главный. Решение: проверить цепочку и разорвать петлю. Ошибка вторая: canonical на 404 или 301. Канонический URL должен быть живым и отдавать 200. Если страница переехала, canonical не поможет — нужен 301 редирект. Ошибка третья: canonical на robots.txt Disallow. Если канонический URL закрыт от индексации, поисковик не сможет его прочитать и проигнорирует canonical. Ошибка четвёртая: canonical на нерелевантную страницу. Все страницы товаров канонизированы на главную. Поисковик видит несоответствие контента и игнорирует canonical. Ошибка пятая: canonical только на части страниц. Если на дублях нет canonical, поисковик может проиндексировать дубль как основной URL.
Как проверить canonical на сайте
Способ первый: просмотр исходного кода. Откройте страницу, Ctrl+U, найдите link rel="canonical". Проверьте URL — правильный ли он. Способ второй: инструмент «Проверить URL» в Яндекс.Вебмастере. Показывает, какой canonical определил робот и совпадает ли он с вашим. Способ третий: краулер. Запустите обход сайта и получите отчёт: какие страницы имеют canonical, на кого они ссылаются, нет ли петель и битых canonical. Способ четвёртый: SEO-расширения для браузера. Показывают canonical и другие SEO-теги в один клик.
Canonical для разных типов страниц
Интернет-магазин: товар в нескольких категориях — canonical на основную категорию. Страницы с параметрами (сортировка, фильтры) — canonical на чистый URL категории. Карточка товара — canonical на себя. Блог: статья — canonical на себя. Страницы пагинации — каждая на себя (если контент разный) или на первую страницу (если это разбивка одной статьи). Главная страница — canonical на саму себя. Многоязычный сайт: каждая языковая версия — canonical на себя плюс hreflang на другие версии. О том, как настроить hreflang, читайте в статье Многоязычный сайт для SEO: hreflang, домены и субдиректории.
Часто задаваемые вопросы
Обязателен ли canonical на каждой странице? Настоятельно рекомендуется. Даже если страница единственная версия, canonical на себя — это страховка от случайных дублей (например, если кто-то скопирует URL с параметрами).
Может ли canonical навредить? Да, если настроен неправильно. Canonical на 404 исключит страницу из индекса. Каноническая петля запутает поисковика. Canonical на нерелевантную страницу будет проигнорирован, а дубли останутся.
Что делать, если canonical игнорируется? Проверьте контент: совпадает ли он на канонической и неканонической версиях. Проверьте, что канонический URL доступен и не заблокирован. Усильте сигналы: пропишите canonical в sitemap, используйте внутренние ссылки на канонический URL.
Canonical или 301: что выбрать? Если страница навсегда переехала — 301. Если страница должна оставаться доступной для пользователей, но индексироваться не должна — canonical. Если страница не должна существовать — 404 или 410.
Как canonical влияет на краулинговый бюджет? Положительно. Canonical сокращает количество URL, которые робот считает уникальными и обходит. Робот фокусируется на канонических версиях и не тратит бюджет на дубли.