Canonical, дубли и параметры URL: как не размножить одинаковые страницы

Технические дубли появляются, когда одна и та же страница доступна по нескольким URL. Для пользователя это может быть незаметно, а для SEO и аналитики — неприятно: сигналы размазываются, отчёты путаются, поисковая система выбирает не тот адрес.

Canonical помогает указать основную версию страницы, но он не должен заменять нормальную структуру URL и редиректы там, где они нужны.

Типовые источники дублей

  • со слешем и без слеша;
  • www и без www;
  • HTTP и HTTPS;
  • UTM-метки;
  • параметры сортировки;
  • фильтры каталога;
  • пагинация;
  • верхний и нижний регистр в URL;
  • index.php в адресе.

Пример:

https://example.ru/catalog/product/
https://example.ru/catalog/product
https://www.example.ru/catalog/product/
https://example.ru/catalog/product/?utm_source=ad
https://example.ru/index.php/catalog/product/

Выбрать основную версию

Сначала нужно договориться, какой URL считается главным. Например:

https://example.ru/catalog/product/

После этого все технические решения должны поддерживать этот выбор: редиректы, canonical, sitemap, внутренние ссылки, Open Graph.

Canonical

На странице должен быть canonical на основную версию.

<link rel="canonical" href="https://example.ru/catalog/product/">

Canonical должен быть абсолютным, открываться с кодом 200 и не вести на редирект или 404.

Редирект там, где дубль технический

Если страница доступна с HTTP и HTTPS, лучше сделать 301 на HTTPS. То же часто касается www/non-www и слеша.

server {
    listen 80;
    server_name example.ru www.example.ru;

    return 301 https://example.ru$request_uri;
}

Canonical на HTTP-странице не заменяет нормальный редирект на HTTPS.

UTM-метки

UTM нужны для аналитики, но они не должны становиться отдельными страницами. Обычно страница с UTM содержит canonical на чистый URL.

https://example.ru/service/?utm_source=yandex
canonical: https://example.ru/service/

При этом UTM не нужно удалять редиректом, если они нужны аналитике на странице. Достаточно корректного canonical и настроенной аналитики.

Сортировка и фильтры

С каталогом сложнее. Некоторые фильтры могут быть важными посадочными страницами, а некоторые — техническим мусором. Нельзя одним правилом закрыть всё, не понимая SEO-стратегию.

Нужно разделить:

  • полезные фильтры с уникальным спросом;
  • технические параметры сортировки;
  • параметры количества товаров на странице;
  • случайные комбинации фильтров;
  • страницы поиска.

Пагинация

У страниц пагинации должен быть осознанный canonical. Частая ошибка — все страницы пагинации указывают canonical на первую. Это может мешать обходу товаров или статей дальше первой страницы.

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

Sitemap и внутренние ссылки

В sitemap должны попадать только основные URL. Внутренние ссылки тоже должны вести на основную версию, а не создавать постоянные редиректы.

curl https://example.ru/sitemap.xml | grep "www"
curl https://example.ru/sitemap.xml | grep "utm_"

Чек-лист

  1. Выбрать основную версию URL.
  2. Настроить 301 для HTTP/HTTPS, www и явных технических дублей.
  3. Проверить canonical на ключевых типах страниц.
  4. Убедиться, что canonical ведёт на 200 без редиректа.
  5. Разобрать UTM, сортировки и фильтры отдельно.
  6. Проверить пагинацию.
  7. Очистить sitemap от дублей.
  8. Проверить внутренние ссылки.

Canonical — полезная подсказка, но не волшебная заплатка. Если сайт сам постоянно ссылается на дубли, sitemap содержит старые адреса, а редиректы не настроены, один тег canonical не приведёт структуру в порядок.

Комментарии (0)

Пока нет комментариев. Будьте первым!