Настройка привязки доменов к сайтам 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Настройка привязки доменов к сайтам 1С-Битрикс
Простая
~1 рабочий день
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1181
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    813
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Настройка привязки доменов к сайтам 1С-Битрикс

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

Как Битрикс определяет текущий сайт

При каждом запросе ядро Битрикс читает таблицу b_lang и ищет запись, у которой поле SERVER_NAME совпадает с HTTP-заголовком Host входящего запроса. Найденный LID (двубуквенный код сайта) используется далее для всех операций: выбора шаблона, инфоблоков, языка и т.д.

SELECT LID, DIR, NAME, SERVER_NAME FROM b_lang WHERE ACTIVE = 'Y';

Если SERVER_NAME не совпадает ни с одной записью — Битрикс использует первый сайт по умолчанию или возвращает ошибку в зависимости от конфигурации. Это и есть причина, когда «все домены показывают один сайт».

Добавление домена к сайту через администратор

В /bitrix/admin/site_edit.php?LID=<код_сайта> заполняется поле «Доменное имя сервера» (SERVER_NAME). Здесь вписывается домен без http:// и без слеша: example.com.

Если сайт должен работать и на www.example.com, и на example.com — выберите один из них как основной, второй настройте как редирект на уровне веб-сервера (nginx/Apache), не через Битрикс. Не пытайтесь указать оба в SERVER_NAME — поле не поддерживает несколько значений.

Поле DIR — это путь к директории сайта относительно корня. Для основного сайта — /. Для второго сайта на том же сервере — /second/ или тот же /, если сайты разделяются только по домену.

Конфигурация веб-сервера

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

Nginx: для каждого домена отдельный server {} блок или общий блок с server_name example.com example2.com. Документ-рут один и тот же — корень Битрикс-инсталляции.

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/bitrix;
    # ... стандартная конфигурация Битрикс
}

HTTPS: для каждого домена нужен отдельный SSL-сертификат или wildcard/multi-domain сертификат. Let's Encrypt выдаёт сертификаты на несколько доменов через certbot --domains example.com,example2.com.

Маскировка домена и URL-синонимы

Ситуация: есть основной домен main-shop.ru и партнёрский домен partner-shop.ru, который должен показывать тот же сайт, но с другим брендингом. В Битриксе это реализуется через проверку $_SERVER['HTTP_HOST'] в init.php или в шаблоне сайта с условным подключением другого шаблона — это не стандартная мультисайтовость, а кастомное решение.

Стандартная мультисайтовость предполагает разные шаблоны, разные языки и разный контент для каждого сайта. Если нужен один контент на разных доменах — используйте canonical URL в <head> для указания основного домена и избегания дублирования в SEO.

Переезд сайта на новый домен

При смене домена обновляете SERVER_NAME в b_lang, затем проверяете:

  • Настройки $_SERVER['HTTP_HOST'] в /bitrix/.settings.php (если прописан явно)
  • URL сайта в настройках модулей: COption::GetOptionString("main", "server_name") — в некоторых версиях хранится там
  • Ссылки в контенте инфоблоков — абсолютные ссылки вида http://old-domain.ru/... придётся заменять через SQL-запросы к b_iblock_element_prop_s* и b_iblock_element
  • Email-шаблоны в модуле main — часто содержат захардкоженные URL