Геолокационный редирект
Редирект на региональную версию сайта, основанный на определении местоположения пользователя (GPS, Geolocation API). Более точный, чем IP‑таргетинг, но требует разрешения пользователя.
На странице
Что такое geolocation redirectionМетоды определенияПример Geolocation APISEO‑безопасная реализацияUX‑подходЧасто задаваемые вопросыКратко
Geolocation Redirection — это техника автоматического перенаправления посетителя на подходящую региональную или языковую версию сайта с использованием данных о его физическом местоположении (обычно через браузерный Geolocation API).
Что такое geolocation redirection
Редирект на региональную версию по геолокации пользователя. Аналогично IP‑based, но точнее. Geolocation Redirection использует GPS или Geolocation API браузера для определения местоположения пользователя.
Методы определения
- GPS — очень высокая точность, требует разрешения
- Geolocation API — высокая, требует разрешения
- IP-адрес — средняя (город), не требует разрешения
- Accept-Language — низкая, не требует разрешения
Пример Geolocation API
JAVASCRIPT
// Запрос геолокации
navigator.geolocation.getCurrentPosition(
(position) => {
const lat = position.coords.latitude;
const lon = position.coords.longitude;
// Определение страны по координатам
fetch(`/api/geo?lat=${lat}&lon=${lon}`)
.then(res => res.json())
.then(data => {
if (data.country === 'RU' && !isRussianVersion()) {
showLanguageSuggestion('ru');
}
});
},
(error) => {
// Fallback на IP-based определение
detectByIP();
}
);SEO‑безопасная реализация
- Запрос разрешения — пользователь должен разрешить
- Баннер, не редирект — предложение сменить версию
- Все версии доступны — по прямым URL
- Нет клоакинга — боты видят все версии
UX‑подход
- 1. Пользователь заходит на сайт
- 2. Сайт запрашивает геолокацию (опционально)
- 3. Если разрешено → определение страны
- 4. Показ баннера: «Вы в России. Перейти на русскую версию?»
- 5. Выбор пользователя → сохранение в localStorage
- 6. Языковой переключатель всегда доступен
Не делайте автоматический редирект по геолокации без предупреждения — это может раздражать пользователей и считаться клоакингом, если боту показывается одна версия, а человеку другая. Используйте баннер или всплывающее окно с предложением.
FAQ
Частые вопросы
Geolocation API может определить точное местоположение (вплоть до улицы), а IP часто даёт только страну или город с погрешностью. Но API требует явного разрешения пользователя.
Если вы показываете боту и пользователю одну и ту же версию страницы (без клоакинга), не нарушаете. Предлагайте смену региона через баннер, а не автоматическим редиректом.
Боты обычно не дают разрешение на геолокацию, поэтому они увидят версию по умолчанию. Это нормально. Главное — не делайте редирект для ботов.
Да, hreflang обязателен, чтобы Google правильно связывал языковые/региональные версии. Геолокация — для удобства пользователей, hreflang — для поисковых систем.
Сохраняйте выбранную версию в localStorage или cookie. При последующих загрузках не запрашивайте геолокацию снова, а сразу подставляйте сохранённую версию.
Прямые контакты
Обсудим ваш проект?
Расскажите о целях и сайте — предложу формат работы и следующий шаг.