Что такое субдомен и как он формируется
Субдомен — это префикс перед основным именем хоста, который выделяет логическую часть адреса в структуре веб-адреса. Формально полное имя хоста представляет собой набор меток, разделённых точками: [субдомен.]имя_второго_уровня.суффикс_верхнего_уровня (TLD). Например, запись вида «api.пример.tld» содержит субдомен «api», имя второго уровня «пример» и суффикс верхнего уровня «tld». Субдомен отделяет часть сайта или сервиса и может указывать на отдельный сервер, приложение или контейнер. Например, игровой сервис может быть доступен через субдомен, как в случае сайта Play ELOPUB — Игровая платформа CS2.
Подробнее о том, как субдомен вписывается в URL и в инфраструктуру разрешения имён, можно прочитать в технической документации по DNS и настройке серверов.
Компоненты полного имени хоста и место субдомена в URL
Стандартный URL имеет компоненты: схема (например, протокол), хост, порт (необязательно), путь и параметры запроса. Хост — это полное имя, состоящее из одной или нескольких меток: метка слева чаще всего является субдоменом. В конструкции вида «https://sub.host.tld:443/path?query» субдомен размещается в начале хоста и участвует в сравнении заголовка Host, который использует веб-сервер для маршрутизации.
Правила и ограничения при именовании субдоменов
Метка субдомена может содержать латинские буквы, цифры и дефис, но не начинаться или заканчиваться дефисом; длина метки ограничена 63 байт, а длина полного имени хоста — 255 байт. Имя чувствительно к соглашениям кодировки: при использовании нелатинских символов применяется Punycode. При создании учесть ограничения протоколов, например, правила для cookie или для валидации сертификатов.
Взаимосвязь субдоменов и DNS
Типы DNS-записей для субдоменов (A, CNAME, TXT, AAAA)
A-запись указывает IPv4-адрес для конкретного субдомена; AAAA — указывает IPv6-адрес. CNAME задаёт псевдоним, перенаправляющий одно имя на другое; при этом CNAME не должен сосуществовать с другими типами записей для того же имени. TXT используется для хранения произвольных текстовых данных, часто применяемых для проверки владения и почтовой валидации (SPF, DKIM-подобные записи).
Процесс разрешения имени и роль TTL
При запросе имени рекурсивный резолвер запрашивает авторитативные серверы, получает соответствующую запись (A/AAAA/CNAME) и возвращает IP. TTL указывает время жизни записи в кэше в секундах; типичные значения — 300 (5 минут), 3600 (1 час) или 86400 (24 часа). Низкий TTL ускоряет распространение изменений, высокий снижает нагрузку на серверы имён, но приводит к более длительному кэшированию старых значений.
Настройка сервера и маршрутизация запросов
Виртуальные хосты и привязка имени к приложению
Веб-серверы различают входящие запросы по заголовку Host и направляют их к соответствующему обработчику или приложению. Конфигурация виртуального хоста сопоставляет конкретное имя с корнем приложения, директорией или пулом процессов. Для обратных прокси часто указывают адрес целевого приложения (локальный порт или unix-сокет) и настраивают заголовки, включая Host и X-Forwarded-For.
Размещение субдомена на отдельном сервере или контейнере
Субдомен может указывать на другой хост: достаточно создать A/AAAA-запись, указывающую на IP удалённого сервера, или CNAME на другое имя. Это позволяет распределять нагрузку, изолировать окружения и использовать отдельные контейнеры или виртуальные машины. В таких сценариях важно обеспечить корректную маршрутизацию портов и настройку межсетевого экрана.
Безопасность и сертификаты для субдоменов
SSL/TLS для одиночных и wildcard-субдоменов
SSL/TLS-сертификат привязывается к конкретному имени или набору имён в поле SAN. Wildcard-сертификат в форме «*.пример.tld» покрывает все одноуровневые субдомены (например, api.пример.tld), но не подуровни вида a.b.пример.tld. Типичный срок действия автоматически выдаваемых сертификатов — 90 дней; для wildcard зачастую требуется подтверждение владения через DNS (DNS-01 challenge).
Частые ошибки конфигурации и как их избежать
Распространённые ошибки: отсутствие A/AAAA-записи, конфликтная CNAME-запись для того же имени, слишком длинный TTL при смене адресов, несоответствие имени в сертификате и Host-заголовке, отсутствие проброса заголовков через прокси. Для проверки использовать инструменты разрешения имён и проверку цепочки сертификатов, а также тестировать доступность с разных сетей и при выключенном кэше DNS.
Практические сценарии использования субдоменов
Сегментация сервисов: примеры использования (api, blog, docs)
Субдомены часто применяют для разделения функций: «api» для программных интерфейсов, «blog» для блога, «docs» для документации. Такое разграничение позволяет развернуть отдельный стек технологий, назначить отдельные сертификаты и политики безопасности, настроить отдельные правила кеширования и файрвола.
Тестовые окружения, staging и изоляция разработки
Для тестовых окружений используют субдомены типа «staging» или «dev», размещая их на отдельных серверах или контейнерах. Это обеспечивает изоляцию данных и конфигурации; при таком подходе рекомендуется установить короткий TTL и отдельные учётные данные для доступа и мониторинга.
Индексация, аналитика и управление контентом
Влияние субдоменов на индексирование и каноничность
Поисковые системы обычно рассматривают субдомены как отдельные хосты, поэтому индексирование и репутация могут формироваться раздельно. Для управления каноничностью нужно использовать rel=canonical, sitemap и согласованные правила robots.txt. При переносе контента следует настраивать 301-редиректы и указывать предпочтительные URL.
Рекомендации по выбору между субдоменом и подкаталогом
Выбор зависит от целей: субдомен целесообразен при необходимости полной технологической или организационной изоляции, отдельной аналитики и политик безопасности; подкаталог удобен при единой CMS, общей аналитике и стремлении сохранить накопленную индексную массу. Вопросы управления сертификатами, cookie и настройкой прокси также влияют на выбор.
