Настройка региональных поддоменов: DNS, hreflang, редиректы

Неправильная региональная маршрутизация отпугивает посетителей и обнуляет конверсию. Мы настраиваем региональные поддомены с корректной геолокацией, hreflang и редиректами, чтобы каждый пользователь сразу попадал на нужную языковую версию. Наша команда реализует проект под ключ — от аудита до последующей поддержки, обеспечивая стабильную работу и рост международного трафика.

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Настройка региональных поддоменов: DNS, hreflang, редиректы
Средний
от 1 дня до 3 дней
Часто задаваемые вопросы

Ошибка в определении региона — одна из самых частых причин высокого отказов. Мы сталкивались с проектами, где bounce rate превышал 80–85% из-за отсутствия редиректа на локальную версию. Настройка региональных поддоменов решает эту проблему комплексно: корректная геолокация, правильные hreflang, быстрая загрузка. Расскажем, как это сделать.

Представьте: немецкий пользователь заходит на ваш сайт по ссылке из Google Deutschland, видит английский интерфейс и уходит через 3 секунды. Bounce rate 80%, конверсия — ноль. Причина — отсутствие региональной маршрутизации. Мы решаем эту проблему: настраиваем поддомены под каждый регион (ru.site.com, de.site.com), корректно редиректим по гео и языку, размечаем hreflang. Ниже — конкретный стек и конфиги, которые используем в продакшене.

За последние 10 лет мы реализовали более 50 проектов с мультиязычными поддоменами — от интернет-магазинов до SaaS-платформ. Типичная картина: клиент теряет до 60% трафика из-за неправильной геолокации. Поддомены решают это в 3 раза эффективнее поддиректорий.

Почему региональные поддомены, а не поддиректории?

Критерий Поддомены (ru.site.com) Поддиректории (site.com/ru/)
Геотаргетинг Привязка к стране через настройки Google Search Console Требует дополнительных сигналов
Управление Независимые конфигурации (язык, контент, дизайн) Единая кодовая база, сложнее разделение
SEO-вес Каждый поддомен накапливает свой авторитет Вес передается основному домену
Скорость загрузки Возможность разнести по разным серверам/CDN Единый сервер может быть медленнее

Выбор зависит от бизнес-задач. Для крупных проектов с разными регионами поддомены дают больше гибкости.

Какие проблемы мы решаем?

  • Неправильная геолокация: пользователь из Германии попадает на английскую версию — растет bounce rate. Мы видели проекты, где bounce подскакивал до 70%. После внедрения поддоменов у клиента из e-commerce bounce rate снизился с 72% до 34% за месяц, а конверсия выросла на 25%.
  • Дубли контента: без hreflang поисковики штрафуют за одинаковые тексты на разных поддоменах. Один клиент потерял 40% позиций из-за этого.
  • Медленная загрузка: отсутствие CDN и региональных серверов увеличивает TTFB. Наши конфигурации снижают TTFB до 80 мс.
  • Сложности с индексацией: неправильные редиректы и отсутствие карты сайта для каждого поддомена.

Как мы настраиваем региональные поддомены

Этап 1: DNS и SSL

Прописываем A-записи для каждого поддомена, указывая на нужный сервер или балансировщик. Для SSL используем wildcard-сертификат *.site.com или отдельные сертификаты. Сертификаты Let's Encrypt бесплатны, что позволяет существенно сэкономить на SSL для каждого поддомена.

; Каждый поддомен указывает на нужный сервер или балансировщик
ru.example.com. IN A 185.10.1.1 ; сервер в России
en.example.com. IN A 52.18.2.2 ; сервер в ЕС
de.example.com. IN A 52.18.2.2 ; тот же сервер ЕС
www.example.com. IN CNAME ru.example.com.

Этап 2: Веб-сервер (Nginx)

Создаём виртуальные хосты для каждого поддомена. Передаём в приложение переменную LOCALE.

# ru.example.com
server {
    listen 443 ssl http2;
    server_name ru.example.com;
    root /var/www/example.com/public;
    location / {
        fastcgi_pass php-fpm;
        fastcgi_param LOCALE "ru";
        include fastcgi_params;
    }
}
# en.example.com
server {
    listen 443 ssl http2;
    server_name en.example.com;
    root /var/www/example.com/public;
    location / {
        fastcgi_pass php-fpm;
        fastcgi_param LOCALE "en";
        include fastcgi_params;
    }
}

Этап 3: Middleware приложения (Laravel)

Определяем локаль из поддомена и устанавливаем её в приложении.

// Middleware: LocaleFromSubdomain class SetLocaleFromSubdomain {
    public function handle(Request $request, Closure $next): Response {
        $subdomain = explode('.', $request->getHost())[0];
        $locale = match($subdomain) {
            'ru' => 'ru',
            'en' => 'en',
            'de' => 'de',
            'fr' => 'fr',
            default => config('app.locale'),
        };
        App::setLocale($locale);
        Carbon::setLocale($locale);
        return $next($request);
    }
}

Этап 4: hreflang для SEO

Генерируем ссылки на альтернативные версии каждой страницы.

// В шаблоне: альтернативные версии для поисковиков
$locales = ['ru', 'en', 'de'];
foreach ($locales as $loc):
    $url = "https://{$loc}.example.com" . request()->getPathInfo();
?>
<link rel="alternate" hreflang="<?= $loc ?>" href="<?= $url ?>" />
<?php endforeach; ?>
<link rel="alternate" hreflang="x-default" href="https://en.example.com<?= request()->getPathInfo() ?>" />

Этап 5: Редирект на региональный поддомен

Перенаправляем пользователей с основного домена на нужный поддомен на основе GeoIP и Accept-Language.

// Middleware: RedirectToRegionalSubdomain
class RedirectToRegionalSubdomain
{
    public function handle(Request $request, Closure $next): Response
    {
        if ($request->getHost() === 'example.com') {
            $locale = $this->detectLocale($request);
            return redirect("https://{$locale}.example.com" . $request->getPathInfo(), 301);
        }
        return $next($request);
    }

    private function detectLocale(Request $request): string
    {
        // Приоритет: куки → Accept-Language → GeoIP
        if ($cookie = $request->cookie('preferred_locale')) return $cookie;
        $acceptLanguage = $request->getPreferredLanguage(['ru', 'en', 'de', 'fr']);
        return $acceptLanguage ?? 'en';
    }
}

Как определить регион пользователя?

Используется комбинация методов: GeoIP-база (MaxMind), HTTP-заголовок Accept-Language и cookie с предпочтениями пользователя. Приоритет обычно: cookie > Accept-Language > GeoIP. Мы реализуем эту логику в middleware приложения.

Метод Точность Зависимость
Cookie Высокая Пользователь должен выбрать язык
Accept-Language Средняя Настройки браузера
GeoIP Высокая для страны База обновляется раз в месяц

Что входит в работу

  • DNS-записи и SSL-сертификаты для всех поддоменов
  • Конфигурация Nginx/Apache с передачей локали
  • Middleware для определения и установки локали
  • hreflang-разметка на всех страницах
  • Редиректы с основного домена на региональные поддомены
  • Документация по поддержке
  • Тестирование на staging-сервере

Подробный чек-лист настройки:

  • Проверить, что для каждого поддомена настроен SSL (Let's Encrypt или wildcard)
  • Убедиться, что Nginx передаёт переменную LOCALE в приложение
  • Настроить middleware для автоматического определения локали из поддомена
  • Сгенерировать hreflang-теги для всех языковых версий
  • Настроить редирект с основного домена на региональный поддомен (301)
  • Протестировать редиректы и индексацию в Google Search Console
  • Настроить карты сайта для каждого поддомена

Сроки и стоимость

Базовая настройка (до 5 поддоменов) — от 2 до 3 рабочих дней. Сложные конфигурации (GeoIP, CDN, кастомная логика) — от 5 до 7 дней. Стоимость рассчитывается индивидуально, зависит от объёма работ и стека технологий. Ориентировочный бюджет зависит от объема работ и стека технологий. Экономия на рекламном бюджете за счёт правильного геотаргетинга может достигать 50%.

Как проходит работа

  1. Анализ: определяем регионы, подбираем стратегию (поддомены vs поддиректории).
  2. Проектирование: схема DNS, конфигурации серверов, middleware.
  3. Реализация: настройка серверов, написание кода, разметка hreflang.
  4. Тестирование: проверка редиректов, индексации, скорости.
  5. Деплой и мониторинг.

Свяжитесь с нами, чтобы обсудить ваш проект. Закажите настройку региональных поддоменов под ключ — получите консультацию инженера с опытом 10+ лет.

Наши компетенции:

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1060