К содержимому
← Все статьи
9 мин чтения

Дубли страниц и настройка hreflang для RU/UZ версий сайта

На двуязычных .uz-сайтах дубли возникают одновременно из трёх источников: технического, языкового и контентного. Разбираем каждый и правильную схему hreflang.

Три источника дублей

Технические дубли: один и тот же контент доступен по http и https, с www и без, со слешем и без, с index.php и без. Каждая пара — это два URL с идентичным содержимым, между которыми поисковик вынужден выбирать сам.

Параметрические дубли: сортировки, фильтры, пагинация, UTM-метки. Страница /catalog/ и /catalog/?utm_source=telegram — разные URL с одинаковым контентом. Именно они обычно раздувают число обнаруженных страниц в разы.

Языковые псевдодубли: русская и узбекская версии страницы, где узбекская сделана машинным переводом или частично не переведена. Формально это разные языки, фактически — почти идентичные документы, и поисковик может оставить в индексе только один.

Как находить дубли

Первый инструмент — краулер. В Screaming Frog смотрите отчёты по дублирующимся title, h1 и по хешу содержимого. Совпадение title почти всегда указывает на дубль или на слишком похожие страницы.

Второй — Search Console, отчёт «Индексирование страниц» со статусами «Страница является копией. Google выбрал другую каноническую страницу, чем пользователь» и «Страница с редиректом». Первый статус прямо показывает, где ваш canonical проигнорирован.

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

Склейка: canonical, редиректы и параметры

Для технических дублей единственно правильное решение — 301-редирект на выбранную каноническую форму на уровне сервера. Определитесь один раз: https, без www, со слешем в конце, — и приводите к этой форме все варианты.

Для параметрических используйте rel=canonical на чистый URL плюс Clean-param в robots.txt для Яндекса. Помните: canonical — это рекомендация, а не команда, и Google может её проигнорировать, если контент страниц реально различается.

Для пагинации современный подход: каждая страница пагинации канонична сама себе и открыта для индексации, атрибуты rel=next и rel=prev Google больше не использует. Ставить canonical со второй страницы на первую — ошибка, из-за которой товары с глубоких страниц выпадают из индекса.

hreflang: схема для трёх языков

На каждой странице любой языковой версии должен стоять полный набор альтернатив, включая ссылку на саму себя. Для сайта с русской, узбекской и английской версиями это четыре строки: три языка плюс x-default.

Пример для русской страницы: link rel="alternate" hreflang="ru" href="https://site.uz/ru/uslugi/", затем такие же строки с hreflang="uz" и href на /uz/xizmatlar/, с hreflang="en" и href на /en/services/, и наконец hreflang="x-default" на ту версию, которую вы считаете основной.

Ключевое требование — взаимность. Если русская страница ссылается на узбекскую, узбекская обязана ссылаться на русскую. Односторонние ссылки Google отбрасывает, и в Search Console появляется ошибка «нет обратной ссылки» в отчёте по международному таргетингу.

Особенности узбекского языка в hreflang

Код языка uz покрывает узбекский без указания письменности. Если у вас реально две версии — на латинице и на кириллице — используйте коды uz-Latn и uz-Cyrl. Это корректные значения по стандарту BCP 47, и Google их поддерживает.

Не выдумывайте коды вида uz-UZ-latin или uzlat: невалидное значение приводит к игнорированию всей связки, а не только одной строки. Проверяйте набор через отчёты Search Console и сторонние валидаторы hreflang.

Если у вас одна узбекская версия, дублировать её под двумя кодами письменности не нужно. Одна корректная строка hreflang="uz" работает лучше, чем две конкурирующие записи на один и тот же URL.

Чего hreflang не делает

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

hreflang не спасает от машинного перевода. Если узбекская версия сделана автопереводом без вычитки, она остаётся низкокачественной страницей независимо от разметки, и рано или поздно выпадает из индекса.

hreflang не влияет на ранжирование напрямую. Он влияет на то, какой из ваших URL покажут, что косвенно улучшает поведенческие метрики, потому что пользователь попадает на понятную ему версию с первого клика.

Нужен сайт или реклама? Обсудим ваш проект.