Чем языковой редирект технически отличается от георедиректа
В отличие от георедиректа, определяющего предполагаемое местоположение по IP-адресу, языковой редирект опирается на заголовок настроек языка, который браузер посетителя передаёт серверу при каждом запросе, — сигнал иной природы, но итоговая техническая проблема для поискового робота оказывается очень похожей.
Какой язык браузера видит поисковый робот при обходе
Поисковые роботы обычно обходят сайт с определённым, часто фиксированным значением языкового заголовка, не варьирующимся в зависимости от того, какую конкретно языковую версию сайта в данный момент требуется обойти, — из-за этого автоматический редирект по языку браузера может систематически направлять робота на одну и ту же версию сайта независимо от запрошенного адреса, оставляя прочие версии недостаточно обойдёнными.
Особенно рискованно сочетание языкового редиректа с редиректом на главную страницу. Если при обнаружении несовпадения языка робота с версией запрошенной страницы сайт перенаправляет не на аналогичную страницу другой языковой версии, а на её главную, робот вообще теряет доступ к конкретной глубокой странице, которую пытался обойти, — это заметно хуже даже базовой проблемы неверной версии той же самой страницы.
Рекомендуемый подход, аналогичный решению для георедиректа
- Отказаться от принудительного автоматического редиректа в пользу мягкого предложения переключить язык, оставляя выбор за посетителем.
- Гарантировать доступность каждой языковой версии по её собственному адресу независимо от языковых настроек запрашивающего.
- Использовать разметку hreflang для корректного информирования поисковой системы о соответствии между версиями и целевыми языковыми аудиториями.
Как определять предпочтительный язык без принудительного перенаправления
Определение вероятного предпочтительного языка посетителя на основе настроек браузера можно и стоит продолжать использовать — но исключительно как основание для мягкого предложения переключиться, а не как повод для автоматического, обязательного для всех посетителей и роботов одновременно перенаправления без возможности легко остаться на изначально запрошенной версии.
Как проверить, что все языковые версии действительно доступны роботу
Простая практическая проверка — обратиться к конкретному адресу каждой языковой версии напрямую, без передачи типичного для этой версии языкового заголовка, и убедиться, что сервер всё равно отдаёт запрошенную версию без принудительного перенаправления на другую — именно так поисковый робот де-факто обращается к сайту, и такая проверка напрямую эмулирует его реальное поведение.
Особый случай: сайт, показывающий часть контента на нескольких языках сразу без разделения по адресам
Отдельная от рассмотренной здесь ситуация — когда сайт технически всегда доступен по одному и тому же адресу, но переключает язык отображаемого текста динамически без изменения самого URL. Такая реализация вообще не создаёт проблемы языкового редиректа как таковой, но и не позволяет полноценно индексировать отдельные языковые версии как самостоятельные документы, что является отдельным архитектурным недостатком, не относящимся напрямую к теме редиректов.
Чек-лист
- Не использовать принудительный редирект по языку браузера без возможности отказа.
- Никогда не перенаправлять на главную страницу другой версии вместо аналогичной глубокой страницы.
- Гарантировать прямую доступность каждой языковой версии по собственному адресу для любого запроса.
- Проверять реальную доступность версий, эмулируя запрос без типичного языкового заголовка.
Проблема для пользователей, чей браузер настроен не на родной язык
Не все пользователи держат настройки языка браузера в соответствии со своим реальным родным языком — часть аудитории по разным причинам использует браузер с настройками на другом языке, и принудительный языковой редирект в этом случае направляет их не туда, куда они на самом деле хотели попасть, что является ещё одним практическим аргументом в пользу мягкого предложения вместо жёсткого автоматического перенаправления.
Особенность браузеров, указывающих сразу несколько предпочтительных языков
Многие современные браузеры передают не единственный язык, а упорядоченный список из нескольких предпочтительных языков сразу — корректная обработка такого списка, а не только самого первого значения, позволяет точнее подобрать наиболее подходящую версию для мягкого предложения, если среди нескольких указанных языков есть тот, для которого у сайта действительно есть отдельная версия.
Разница между языком интерфейса сайта и языком содержимого статьи
Стоит отдельно учитывать, что настройки языка браузера отражают предпочтение именно для интерфейса, а не гарантируют, что пользователь не заинтересован в чтении конкретной статьи на другом языке, — это ещё одна причина не блокировать жёстко доступ к нужной версии на основе одного лишь языкового заголовка запроса.
Частые вопросы
Чем языковой редирект отличается от георедиректа по своему техническому механизму?
Языковой редирект опирается на заголовок настроек языка браузера, а не на определение местоположения по IP-адресу, но приводит к очень похожей проблеме — систематическому направлению поискового робота не на ту версию сайта, которую требовалось обойти.
Почему особенно плохо, если языковой редирект ведёт на главную страницу другой версии?
Потому что робот в этом случае вообще теряет доступ к конкретной глубокой странице, которую пытался обойти, а не просто получает другую, но всё же релевантную версию той же самой страницы.
Как проверить, что все языковые версии сайта действительно доступны для обхода?
Обратиться к адресу каждой версии напрямую без передачи типичного для неё языкового заголовка и убедиться, что сервер всё равно отдаёт запрошенную версию без принудительного перенаправления на другую.
Готовый адрес можно собрать прямо сейчас: откройте генератор ЧПУ — он транслитерирует фразу по таблице Яндекса, уберёт служебные слова и покажет длину адреса.