Тег canonical: основной адрес страницы

пошаговая инструкция · Быстро: 5–15 минут

← Все инструкции

1. Что произошло

Тег canonical сообщает поисковикам, какая версия адреса главная.

2. Почему это важно

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

3. На каких страницах обнаружено

Тег link rel="canonical" в head страницы. Страницы с canonical на другой адрес перечислены в аудите страниц и глубоком обходе.

Чтобы увидеть адреса на вашем сайте, откройте инструкцию из отчёта или добавьте домен в адрес: /fix/canonical/ваш-сайт.ru.

4. Как исправить

Для 1С-Битрикс

  1. В header.php шаблона используйте код ниже или свойство страницы: в публичной части можно вызвать $APPLICATION->SetPageProperty("canonical", "…").
1С-Битрикс: header.php
<?php
$scheme = \Bitrix\Main\Context::getCurrent()->getRequest()->isHttps() ? 'https' : 'http';
$url = $scheme . '://' . $_SERVER['HTTP_HOST'] . $APPLICATION->GetCurPage(false);
$APPLICATION->AddHeadString('<link rel="canonical" href="' . htmlspecialcharsbx($url) . '">');

Общее для любого сайта

  1. Добавьте на каждую индексируемую страницу тег canonical с полным адресом её основной версии: https, нужный вариант с www, без параметров.
  2. Страница должна ссылаться canonical на себя, если это её основной адрес. Если страница — копия (сортировка, метки), canonical ведёт на основную.
  3. Адрес в canonical обязан открываться с кодом 200 и не закрыт noindex.
  4. Не ставьте на всех страницах canonical на главную: поисковик выбросит их из индекса.

5. Готовый код

Замените example.com на свой домен. Перед правкой конфигурации сделайте резервную копию файла.

Любой сайт

Тег в head
<link rel="canonical" href="https://example.com/page/">

phpBB

phpBB: overall_header.html
<!-- IF U_CANONICAL --><link rel="canonical" href="{U_CANONICAL}"><!-- ENDIF -->

6. Как проверить результат

  1. В выводе ровно один тег, адрес верный и открывается.
  2. Нажмите «Перепроверить сайт» или запустите аудит страниц.
Тег canonical
curl -s https://example.com/page/ | grep -i 'rel="canonical"'

Чтобы перепроверить сайт, откройте отчёт и нажмите «Проверить заново».