Главная » Администрирование Битрикс » Многосайтовость в Битрикс: настройка нескольких сайтов

Многосайтовость в Битрикс: настройка нескольких сайтов

Схема многосайтовости в 1С-Битрикс: несколько доменов на одном ядре и базе данных

Несколько сайтов на одной установке 1С-Битрикс — общее ядро, общая база данных, но разные домены, шаблоны и, при необходимости, разный набор контента. Разберём, как устроена многосайтовость в Битриксе и чем она отличается от простого мультиязычного сайта на одном домене.

Что даёт многосайтовость

Один физический экземпляр системы обслуживает несколько сайтов — например, основной домен и отдельный лендинг под конкретную рекламную кампанию, или версии сайта для разных стран с разными доменами. Все сайты используют общий код ядра, общие модули и общую базу данных, что упрощает поддержку по сравнению с полностью раздельными установками — обновление ядра выполняется один раз для всех сайтов сразу.

Создание нового сайта

Новый сайт добавляется в разделе НастройкиНастройки продуктаСайты, где задаётся код сайта, домен, путь к шаблону по умолчанию и связка с конкретным доменным именем в поле Домен. Система определяет, какой сайт обслуживать, по совпадению этого поля с реальным доменом входящего запроса.

Нужна помощь с Битрикс?





    Общие и раздельные инфоблоки

    Каждый инфоблок при создании привязывается к конкретному сайту или к нескольким сразу — это определяет, будет ли контент общим для всех сайтов установки или уникальным для каждого. Типичная ошибка при первой настройке многосайтовости — забыть привязать новый инфоблок ко второму сайту, из-за чего контент, видимый на основном домене, не появляется на новом без дополнительной настройки.

    Шаблоны для разных сайтов

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

    Разграничение контента между сайтами в коде

    <?php
    
    use Bitrix\Main\Context;
    
    $siteId = Context::getCurrent()->getSite();
    
    if ($siteId === 's2') {
        // логика, специфичная для второго сайта
    }

    Собственная логика в обработчиках событий или компонентах, зависящая от того, на каком именно сайте выполняется код, определяет текущий сайт через контекст, а не через проверку домена вручную по $_SERVER['HTTP_HOST'] — это остаётся корректным даже если у одного сайта окажется несколько доменов-алиасов.

    Общие пользователи между сайтами

    Учётные записи пользователей по умолчанию общие для всей установки — один и тот же логин и пароль работают на всех сайтах, если явно не настроено разграничение через группы и права доступа, ограничивающие видимость конкретного сайта для конкретной группы пользователей. Для сценария "разные сайты — разные клиентские базы" это разграничение нужно настраивать отдельно, а не полагаться на естественную изоляцию, которой в общем ядре нет по умолчанию.

    Общий модуль продаж между сайтами

    Модуль продаж также общий на уровне установки — заказы с разных сайтов попадают в общий список заказов, но привязаны к конкретному LID (код сайта), что позволяет фильтровать и обрабатывать их раздельно там, где это нужно бизнесу (например, разные менеджеры на разные сайты).

    SEO-независимость доменов

    Каждый сайт с отдельным доменом требует собственной настройки SEO — своего файла robots.txt, своей sitemap.xml, своих метатегов по умолчанию. Общая база данных не означает общую SEO-конфигурацию: поисковые системы видят каждый домен как отдельный сайт независимо от общего технического ядра под капотом.

    Частые ошибки

    • Новый инфоблок не привязан ко второму сайту. Контент не появляется там, где ожидался.
    • Определение сайта через ручную проверку домена вместо контекста. Ломается при появлении доменов-алиасов или смене основного домена.
    • Расчёт на автоматическую изоляцию пользователей между сайтами. Учётные записи общие по умолчанию, если не настроено иначе.
    • SEO-настройки не продублированы для нового домена. Второй сайт стартует без собственного robots.txt и sitemap.

    Итог

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

    Нужна помощь с Битрикс?

    Исправим ошибку, доработаем сайт, ускорим Битрикс или поможем разобраться с проблемой.

    Услуги
    База знаний