Индексация · CANONICAL_LINK_CONFLICT

Конфликт HTML canonical и HTTP Link

HTML link rel=canonical и HTTP Link rel=canonical задают разные адреса. Поиск может выбрать любой сигнал или проигнорировать оба.

Приоритет в аудите: Средний

Что проверяется

Из конечного ответа читается заголовок Link (rel=canonical) и HTML-тег. Сравнение идёт по identity URL, включая конечный слеш: /page и /page/ — разные. Находка, если есть минимум два источника и их identity различаются. Один HTML или один HTTP без пары — не эта находка. Совпадающие сигналы — отсутствие конфликта. Междоменный канон сам по себе может быть намеренным; здесь проверяется только расхождение сигналов. Цепочки и петли — CANONICAL_CHAIN / CANONICAL_LOOP. Относительный HTML canonical относительно `<base href>` — CANONICAL_BASE_CONFLICT.

Частые причины

CMS пишет HTML canonical, а CDN или веб-сервер отдаёт другой Link

Разные абсолютные URL из-за слеша, www или схемы

Два HTTP Link rel=canonical на разные цели

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

Оставьте один канонический URL во всех сигналах. Не добавляйте HTTP Link «на всякий случай», если HTML уже задаёт другой адрес. Cross-domain canonical не исправляйте автоматически, если это синдикация. Цепочки A→B→C и петли A→B→A — отдельные коды CANONICAL_CHAIN и CANONICAL_LOOP.

Критерий приёмки

При наличии HTML и HTTP canonical они совпадают по identity; у находки видны оба URL.