Что считается дублем
Дубль — это когда одно содержимое доступно по нескольким адресам. Совпадение не обязано быть буквальным: страницы, отличающиеся одним абзацем и названием города, для поисковика тоже почти одинаковы.
Важнее другое различение. Есть дубли, которые вы создали намеренно, и есть те, которые породила платформа сама. Второй тип встречается на порядок чаще, и текст на таких страницах никто не копировал — просто одна и та же страница доступна по десятку адресов.
Наказания за дубли не существует, и это стоит проговорить прямо, потому что вокруг темы много паники. Последствия есть, но они прозаичнее: обход расходуется на копии, сигналы дробятся между версиями, а в выдаче оказывается тот адрес, который выбрал поисковик, а не вы.
Откуда они берутся
| Источник | Как выглядит | Обычное решение |
|---|---|---|
| Варианты домена | Сайт открывается с www и без, по обоим протоколам | 301 на один основной вариант |
| Слеш в конце адреса | /page и /page/ отдают одно и то же | 301 на выбранный формат |
| Индексный файл | / и /index.php работают одновременно | 301 на короткий адрес |
| Регистр букв | /Page и /page открываются обе | 301 на нижний регистр |
| Метки и параметры | UTM, идентификатор сессии, партнёрский код | Самоссылающийся canonical, в Яндексе Clean-param |
| Сортировки и фильтры | ?sort=price, ?color=red | Canonical на базовую категорию либо отдельные страницы под спрос |
| Пагинация | Страницы списка с одинаковым заголовком | Самоссылающийся canonical, уникальные заголовки |
| Товар в нескольких категориях | Одна карточка по трём путям | Canonical на основной адрес |
| Версии для печати | /page?print=1 | Canonical на обычную версию |
| Результаты внутреннего поиска | ?q=... в индексе | Запрет обхода в robots.txt |
| Тестовый домен | Копия сайта на поддомене попала в индекс | Закрыть авторизацией |
| Шаблонные блоки | Одинаковое описание доставки на всех карточках | Не дубль страницы, но повод усилить уникальную часть |
Последняя строка выбивается из ряда намеренно: одинаковый блок внутри разных страниц дублем не делает их. Проблема возникает, когда уникального содержания меньше, чем шаблонного.
Четыре инструмента и что каждый делает
Инструменты часто путают, а они решают разные задачи и не взаимозаменяемы.
301-редирект — команда. Старый адрес перестаёт существовать, посетитель и робот отправляются на новый, накопленные сигналы переносятся. Применяется, когда вторая версия людям не нужна.
Canonical — подсказка. Обе версии продолжают открываться, но вы сообщаете, какая из них главная. Поисковик может подсказку не принять, и в панели это видно отдельной строкой. Применяется, когда вторая версия нужна человеку: фильтр, сортировка, ссылка с меткой.
Noindex — запрет включения в базу. Страница открывается, но в выдаче её нет. Требует, чтобы робот страницу обошёл и метку увидел.
Disallow в robots.txt — запрет обхода. Не убирает из индекса и не объединяет версии. Более того, закрытая от обхода страница с canonical внутри становится невидимой инструкцией: робот не может её прочитать. Для дублей это почти всегда неверный выбор, кроме одного случая — бесконечных генерируемых адресов вроде результатов внутреннего поиска, на которые жалко тратить обход.
Развилка выбора
Три вопроса подряд дают ответ без экспертной интуиции.
Нужна ли вторая версия человеку? Нет — 301. Страница со слешем, версия с www, старый адрес после переезда: никто по ним осознанно не ходит.
Если нужна — должна ли она быть в поиске отдельно? Нет — canonical на основную. Сортировка по цене, страница с меткой из рассылки, версия для печати. Да — это не дубль, а самостоятельная страница, и ей нужны собственные заголовок и описание. Так бывает с фильтрами, под которые есть отдельный спрос.
Если она вообще не для поиска — есть ли риск утечки данных? Нет — noindex. Да — авторизация. Личный кабинет и корзину закрывают доступом, а не метками: метка не защищает, она только просит не показывать.
Не все дубли одинаково вредны
Список найденных дублей обычно длинный, и разбирать его целиком незачем. Приоритет задают два признака.
Тратит ли он обход. Бесконечно генерируемые адреса — фильтры в произвольных сочетаниях, календари, результаты поиска — уводят робота в бессмысленный обход. Это дороже всего, потому что ресурс уходит от новых страниц.
Попал ли он в выдачу вместо нужного. Если по вашему запросу показывается версия с параметром или страница печати, ущерб прямой: у неё нет ни навигации, ни внутренних ссылок, ни нормального заголовка.
Дубль, который не тратит обход и не показывается людям, можно оставить в очереди надолго. Формально он есть, практически ничего не стоит.
Как найти дубли на своём сайте
Проверка не требует платных инструментов и занимает полчаса.
- Руками откройте варианты одного адреса. С www и без, с протоколом http, со слешем и без, с произвольным параметром вида
?test=1. Каждый, который открылся с кодом 200 вместо редиректа, — источник дублей. - Посмотрите исключённые страницы в панелях. Причина «страница является копией» и статус «дубль» дают готовый список с указанием того, какой адрес поисковик считает главным. Где смотреть — в разборе панелей вебмастера.
- Выгрузите заголовки всех страниц краулером и отсортируйте. Совпадающие title и h1 почти всегда означают либо дубль, либо страницы, которые конкурируют между собой за один запрос.
- Возьмите характерное предложение со страницы и поищите его в кавычках. Способ грубый, но показывает копии на чужих сайтах и на ваших поддоменах.
Языковые версии. Один текст на русском и английском — разные документы. Связываются через hreflang, canonical между ними не ставится.
Региональные страницы с разным содержанием. Если отличаются адрес, телефон, цены и условия — это разные страницы. Если отличается только название города в заголовке, это дубль с косметикой.
Карточки похожих товаров. Разные модели с одинаковым шаблоном описания — не дубли, пока у каждой есть собственные характеристики. Проблема начинается там, где уникальны только артикул и картинка.
Цитата или таблица, встречающаяся на нескольких сайтах. Совпадение фрагмента не делает страницу копией — сравнивается документ целиком.
Спорное место
Дубли принято лечить разметкой: расставить canonical, настроить редиректы, закрыть лишнее. Это работает и обычно на этом останавливаются.
Неудобная часть в том, что дубли чаще всего — симптом архитектуры, а не самостоятельная болезнь. Товар доступен по трём адресам, потому что структура сайта построена вокруг путей навигации, а не вокруг сущностей. Canonical эту структуру не исправляет, он маскирует следствие.
Есть и обратный аргумент, который стоит признать: перестройка адресов — дорогая операция с риском потерять накопленное, а разметка стоит день работы и снимает большую часть ущерба. Для действующего сайта второе почти всегда разумнее.
Поэтому честный совет разделяется по ситуациям. На работающем проекте — расставить canonical и редиректы, не трогая структуру. На новом или при переезде — потратить время на то, чтобы у каждой сущности был ровно один адрес, и заодно продумать перелинковку сразу от этой схемы. Второй путь дороже на старте и дешевле в эксплуатации.
Частые вопросы
Понижают ли сайт за дубли?
Что делать с UTM-метками, они создают дубли?
Нужно ли ставить canonical со второй страницы пагинации на первую?
Один товар лежит в трёх категориях и доступен по трём адресам. Как быть?
Как быстро дубли исчезают после исправления?