Развертывание второго сайта на одном хостинге с использованием 1С-Битрикс требует учета архитектуры продукта: система поддерживает мультисайтовость, но требует правильной конфигурации окружения. Ключевой момент – организация структуры папок и корректная настройка веб-сервера (Apache или Nginx) для обработки запросов к новому домену или поддомену.
В файле bitrix/.settings.php необходимо задать параметры второго сайта, добавив новый элемент в массив ‘sites’ с уникальным идентификатором, доменным именем и указанием пути к папке сайта. При использовании главного модуля «Сайт» в административной панели нужно вручную создать второй сайт, указав идентификатор, директорию, привязку к шаблону и домену.
Для корректной работы важно настроить веб-сервер: в Apache – добавить виртуальный хост с новым ServerName и DocumentRoot, а в Nginx – соответствующий server-блок с root и server_name. Без этих изменений система не распознает второй сайт, даже если он создан в административной панели.
Также следует проверить права на директории и наличие файла .htaccess (или default.conf для Nginx) в папке второго сайта. Он должен корректно перенаправлять запросы к ядру Битрикс и обеспечивать правильную работу ЧПУ.
Настройка дополнительного домена у хостинг-провайдера
В панели управления хостингом (например, ISPmanager, cPanel или DirectAdmin) откройте раздел «Домены» или «Управление сайтами». Выберите опцию «Добавить домен» или «Привязать домен».
Укажите имя второго домена в формате example.ru без www. В поле «Корневая папка» задайте путь к директории, в которой размещаются файлы второго сайта. Например, если основная директория – /public_html
, создайте подпапку /public_html/site2
и укажите её как корневую.
Убедитесь, что для домена активирован SSL-сертификат. Включите автоматическую выдачу Let’s Encrypt, если такая функция поддерживается. Без HTTPS сайт может блокироваться браузерами и вызывать ошибки при работе с API 1С-Битрикс.
Перейдите в настройки DNS у регистратора домена и пропишите A-запись, указывающую на IP-адрес сервера. Если используется проксирование через Cloudflare или аналогичные сервисы, добавьте CNAME-запись, соответствующую субдомену.
После внесения изменений дождитесь обновления DNS-записей – обычно это занимает от 15 минут до 24 часов. Проверить корректность можно с помощью утилит nslookup
или онлайн-сервисов проверки DNS.
На этом этапе домен будет направлен на нужную директорию хостинга, и можно переходить к настройке второго сайта в административной панели 1С-Битрикс.
Добавление второго сайта в настройках веб-сервера
Для корректной работы второго сайта на 1С-Битрикс необходимо настроить виртуальный хост в конфигурации веб-сервера. Если используется Apache, откройте файл конфигурации httpd.conf или отдельный файл в папке sites-available, если работает модуль vhost. Для Nginx – внесите изменения в sites-available с последующей активацией через символическую ссылку в sites-enabled.
Укажите новый ServerName, например, site2.example.ru, и путь к корневой директории второго сайта. Важно, чтобы DocumentRoot указывал на подпапку текущей установки Битрикс, например /home/user/public_html/bitrix_second_site.
Пример конфигурации для Apache:
<VirtualHost *:80> ServerName site2.example.ru DocumentRoot "/home/user/public_html/bitrix_second_site" <Directory "/home/user/public_html/bitrix_second_site"> AllowOverride All Require all granted </Directory> </VirtualHost>
Для Nginx:
server { listen 80; server_name site2.example.ru; root /home/user/public_html/bitrix_second_site; location / { index index.php index.html; try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include fastcgi_params; fastcgi_pass unix:/run/php/php8.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
После добавления виртуального хоста перезапустите веб-сервер командой systemctl restart apache2
или systemctl restart nginx
. Убедитесь, что DNS-запись для второго домена настроена на IP сервера. Также проверьте, что корневая директория содержит файл .settings.php
с правильной конфигурацией сайтов внутри Битрикс.
Создание нового сайта в административной панели Битрикс
Перейдите в административную панель под учетной записью с полными правами. Откройте раздел Настройки → Настройки продукта → Сайты → Список сайтов.
Нажмите кнопку Добавить сайт. В появившейся форме укажите уникальный код сайта (латиницей, без пробелов), например: site2. Поле Название сайта заполняется произвольно – оно отображается только в панели администратора.
В поле Папка сайта укажите корневой каталог второго сайта относительно корня проекта, например: /site2/. Папка должна существовать физически на сервере, либо её необходимо создать заранее.
В разделе Домены добавьте один или несколько доменных имен, по которым будет доступен новый сайт. Указывайте домены без протокола, например: site2.example.ru. Один домен может принадлежать только одному сайту в системе.
Установите флаг Активность, чтобы сайт начал обрабатываться системой. Проверьте язык интерфейса и часовой пояс – они задаются индивидуально для каждого сайта.
Сохраните изменения. После этого необходимо настроить веб-сервер (Apache или Nginx) для обработки запросов к новому домену и убедиться, что DocumentRoot указывает на папку /bitrix, а не на подкаталог нового сайта.
Если используются ЧПУ и модуль «Главный модуль» настроен на поддержку множественных сайтов, убедитесь, что файл urlrewrite.php корректно обрабатывает запросы ко второму сайту.
Назначение директории для второго сайта в структуре проекта
Для корректной работы второго сайта в 1С-Битрикс необходимо создать отдельную директорию внутри корня веб-приложения. Эта директория будет использоваться как корневая для второго сайта и определяться в настройках многосайтовости.
- Создайте директорию, например
/site2/
, в корне проекта наряду с основной директорией сайта (/
). - Скопируйте в неё минимальный набор файлов:
index.php
,.htaccess
(при необходимости), а также подкаталогиinclude
,local
или любые иные, специфичные для нового сайта. - В файле
index.php
пропишите подключение пролога Bitrix:require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
или полный пролог, если требуется. - Убедитесь, что структура новой директории не дублирует ненужные модули и компоненты, используемые с общего ядра.
- В
bitrix/.settings.php
либо через административную панель задайте правила определения сайта по директории/site2/
.
Ядро Bitrix (каталог /bitrix/
) остаётся общим для всех сайтов, поэтому не копируйте его внутрь новой директории. Это обеспечит совместимость и централизованное обновление.
Важно: доступ к директории второго сайта должен быть настроен через веб-сервер. Убедитесь, что веб-сервер разрешает обработку PHP в подкаталоге и корректно обрабатывает ЧПУ при помощи .htaccess
или конфигурации nginx.
Настройка параметров сайта в файле .settings.php
Файл .settings.php располагается в корне установки 1С-Битрикс и содержит конфигурацию ядра. Для добавления второго сайта необходимо вручную указать параметры подключения и идентификаторы сайтов.
Внутри массива ‘sites’ указывается список сайтов. Каждый элемент описывает параметры отдельного сайта. Пример добавления второго сайта:
'sites' => [
'default' => [
'LID' => 's1',
'DIR' => '/',
'DOMAIN_NAME' => 'example.ru',
],
'second' => [
'LID' => 's2',
'DIR' => '/second/',
'DOMAIN_NAME' => 'second.example.ru',
],
],
Поле ‘LID’ должно совпадать с кодом сайта, указанным в административной панели Битрикс в разделе Настройки > Настройки продукта > Сайты > Список сайтов.
‘DIR’ определяет корневую директорию сайта внутри проекта. Убедитесь, что путь существует физически, иначе при обращении к домену возникнет ошибка 404.
‘DOMAIN_NAME’ указывается без протокола и должен совпадать с доменным именем, прописанным в конфигурации веб-сервера (Apache, Nginx).
После внесения изменений кэш конфигурации необходимо сбросить. Для этого удалите директорию /bitrix/.settings.php и выполните пересборку через административный интерфейс или вручную с помощью скрипта bitrix/php_interface/init.php.
Изменения вступят в силу только после корректной настройки веб-сервера, соответствующего домена и правил маршрутизации. Убедитесь, что в .htaccess или конфигурации Nginx определены правила перенаправления на нужный index.php.
Связывание второго сайта с нужным инфоблоком или шаблоном
После настройки второго сайта в административной панели 1С-Битрикс необходимо обеспечить его корректную работу с определённым шаблоном и конкретными инфоблоками. Это делается через файл /bitrix/php_interface/init.php
или через правила в настройках сайтов.
- Для начала в настройках второго сайта в административной панели укажите уникальный шаблон сайта. Путь: Настройки → Настройки продукта → Сайты → Список сайтов. В поле «Шаблоны сайта» задайте условие, например,
CSite::InDir('/second-site/')
. - Создайте отдельный шаблон в директории
/bitrix/templates/
и укажите его для второго сайта. Это позволит избежать конфликтов с основным сайтом. - Для разграничения инфоблоков используйте разделение по SITE_ID. При создании инфоблока обязательно указывайте, к какому сайту он относится. Без этого инфоблок будет доступен на всех сайтах.
- Если используются собственные шаблоны компонентов, разместите их в директории шаблона второго сайта:
/bitrix/templates/ваш_шаблон/components/
, чтобы обеспечить независимость от главного шаблона. - Избегайте использования одинаковых символьных кодов инфоблоков, особенно при работе с ЧПУ. Лучше использовать уникальные алиасы и структуру URL, специфичную для второго сайта.
Также можно использовать условную логику в init.php для подключения разных обработчиков или фильтров в зависимости от текущего SITE_ID:
if(SITE_ID == 's2') {
// Привязка к нужному инфоблоку
define("IBLOCK_NEWS_ID", 5);
}
Таким образом, вся логика второго сайта будет работать автономно, не затрагивая основной сайт и обеспечивая корректную загрузку контента, соответствующего его назначению.
Управление языковыми и региональными настройками второго сайта
Для корректного отображения контента второго сайта на одном хостинге необходимо отдельно настроить языковые параметры в административной панели 1С-Битрикс. В разделе «Настройки» – «Языковые настройки» добавьте нужный язык и укажите его идентификатор, уникальный для второго сайта. При этом следует задать корректные файлы локализации, чтобы интерфейс и системные сообщения отображались на выбранном языке.
В разделе «Настройки» – «Региональные настройки» важно настроить часовой пояс, валюту и формат даты/времени, привязанные именно к второму сайту. Это позволяет избежать конфликтов с основным сайтом и гарантирует правильное отображение региональных данных, например, цены товаров и сроки доставки.
Для мультиязычных сайтов используйте механизм привязки языка к домену или поддомену через настройку виртуальных хостов. В файле .htaccess или в настройках веб-сервера пропишите правила, которые будут автоматически переключать язык в зависимости от URL второго сайта.
Рекомендуется для каждого языка создавать отдельный шаблон сайта с соответствующими настройками локализации и включать в шаблон языковые файлы через функцию IncludeTemplateLangFile()
. Это позволит гибко управлять переводами и адаптировать дизайн под региональные особенности.
Для SEO-оптимизации используйте тег hreflang
, указывая на соответствующую версию второго сайта. Это минимизирует риски дублирования контента и улучшит индексацию поисковыми системами.
Важно проверить корректность параметров в файле /bitrix/php_interface/dbconn.php, если подключение к базе данных происходит с учетом языковых настроек. Не допускайте конфликтов идентификаторов языков и региональных параметров между сайтами.
В разделе «Настройки» – «Мультиязычность» активируйте необходимый режим работы, учитывая, что для второго сайта потребуется отдельное управление контентом на каждом языке. Для удобства администрирования рекомендуются специализированные модули локализации, доступные в маркетплейсе 1С-Битрикс.
Резюмируя, настройка языковых и региональных параметров второго сайта должна быть автономной и изолированной от первого, чтобы обеспечить корректное функционирование и точное соответствие локальным требованиям пользователей.
Проверка работы второго сайта и устранение типовых ошибок
После развертывания второго сайта на одном хостинге с 1С Битрикс необходимо выполнить комплексную проверку функционала и настроек. Начните с подтверждения корректности привязки домена во вкладке «Сайты» административной панели. Неверно указанное имя домена ведёт к ошибкам 404 или перенаправлениям.
Проверьте, что корневая папка второго сайта содержит корректный набор файлов, включая index.php и .htaccess. Отсутствие или повреждение этих файлов часто вызывает сбои загрузки страниц.
Важно убедиться в правильной настройке виртуального хоста на сервере (Apache, nginx). Для nginx проверьте, что конфигурация содержит корректный параметр server_name, а для Apache – директиву ServerAlias с нужным доменом. Ошибки в этих настройках приводят к загрузке не того сайта или выдаче ошибки сервера.
Проверьте подключение к базе данных. Второй сайт должен использовать отдельную базу данных или префиксы таблиц. Если используется одиннаковый префикс, это вызовет конфликты данных. Ошибки подключения видны в логе /bitrix/php_interface/ и через админку.
Для проверки корректности путей используйте команду php bitrix/modules/main/tools/bitrix_sitemap.php в консоли, она выявит ошибки файлов и ссылок. Также рекомендуются стандартные инструменты разработчика браузера для мониторинга ответов сервера (статусы 200, 301, 404, 500).
Обязательно проверьте права доступа на папки второго сайта. Рекомендуемые значения – 755 для каталогов и 644 для файлов. Некорректные права вызывают ошибки записи или чтения, что отражается в работе компонента и административной части.
Если сайт использует кэширование, очистите кеш через административную панель или удалите содержимое папки /bitrix/cache/. Часто после копирования сайта старый кеш мешает корректному отображению и работе.
При обнаружении ошибки с загрузкой стилей и скриптов проверьте правильность настроек ЧПУ и URL Rewrite. Файл .htaccess должен содержать правила для второго сайта, которые не конфликтуют с основным.
Для диагностики ошибок используйте лог веб-сервера и файл /bitrix/logs/php_error.log. Ошибки с указанием путей и строк помогут быстро локализовать проблемные места в конфигурации или коде.
Регулярно сверяйте версию ядра Битрикс на обоих сайтах. Несовпадение версий модулей вызывает несовместимость и сбои. Для обновления используйте стандартный модуль обновлений.
В случае проблем с авторизацией или сессиями проверьте настройки cookie и домена в /bitrix/php_interface/dbconn.php. Конфликты сессий между сайтами решаются через корректную настройку SESSION_COOKIE_DOMAIN.
Вопрос-ответ:
Можно ли разместить второй сайт на том же хостинге, где уже есть сайт на 1С-Битрикс?
Да, на одном хостинге можно создать несколько сайтов, в том числе второй сайт на 1С-Битрикс. Для этого важно правильно настроить виртуальные хосты и папки, а также убедиться, что у вас достаточно ресурсов и лицензий, чтобы поддерживать оба проекта.
Какие настройки нужно изменить в панели управления хостингом для запуска второго сайта на 1С-Битрикс?
Необходимо создать отдельную папку для второго сайта и прописать в панели управления хостингом новый виртуальный хост с указанием этой директории. Также потребуется настроить доменное имя или поддомен, который будет указывать на эту папку. После этого можно устанавливать или копировать дистрибутив 1С-Битрикс в новую директорию.
Можно ли использовать одну базу данных для двух сайтов на 1С-Битрикс или нужно создавать отдельную базу для второго сайта?
Лучше создавать отдельную базу данных для каждого сайта. Это уменьшает риски конфликтов, облегчает резервное копирование и обслуживание. Хотя технически можно использовать одну базу с разными префиксами таблиц, такой подход усложняет управление и повышает вероятность ошибок.
Как правильно лицензировать второй сайт на 1С-Битрикс, если уже есть лицензия для первого?
Для каждого сайта на 1С-Битрикс требуется отдельная лицензия. Наличие лицензии для первого сайта не покрывает использование второго. Следует приобрести дополнительную лицензию или обратиться к партнеру 1С-Битрикс для получения информации о пакетных предложениях.
Как избежать проблем с производительностью при работе двух сайтов на одном сервере с 1С-Битрикс?
Важно следить за нагрузкой на сервер и распределять ресурсы. Рекомендуется использовать кэширование, оптимизировать базы данных, а также настраивать ограничения по использованию памяти и процессора для каждого сайта. Если ресурсы сервера ограничены, стоит рассмотреть возможность увеличения мощности или перехода на выделенный сервер.
Как на одном хостинге установить второй сайт на 1С-Битрикс, если уже есть работающий первый?
Для размещения второго сайта на том же хостинге с 1С-Битрикс нужно создать отдельную папку для второго проекта и настроить поддомен или дополнительный домен в панели управления хостингом. После этого можно скопировать дистрибутив 1С-Битрикс в новую папку и выполнить установку, используя новую базу данных или отдельные таблицы в существующей базе. Важно настроить права доступа и указать правильные параметры подключения к базе данных, чтобы сайты не мешали друг другу. Также следует проверить, что хостинг поддерживает несколько сайтов и не имеет ограничений по числу сайтов на аккаунте.
Какие особенности нужно учитывать при создании второго сайта на 1С-Битрикс на одном сервере, чтобы избежать конфликтов?
При добавлении второго сайта на том же сервере стоит обратить внимание на несколько моментов. Во-первых, необходимо выделить отдельную базу данных или использовать префиксы таблиц, чтобы данные первого и второго сайта не смешивались. Во-вторых, каждый сайт должен находиться в отдельной директории с собственным набором файлов и настроек. В-третьих, нужно правильно настроить веб-сервер (например, Apache или nginx) для корректной обработки запросов на разные домены или поддомены. Кроме того, важно следить за ресурсами сервера: с двумя сайтами нагрузка увеличивается, и может потребоваться оптимизация или расширение тарифного плана хостинга. Наконец, стоит предусмотреть регулярное резервное копирование обеих баз данных и файлов, чтобы не потерять данные при сбоях.