В 1С-Битрикс с использованием одной лицензии мы можем развернуть несколько сайтов. Количество одновременно разворачиваемых сайтов обуславливается редакцией Вашего дистрибутива(лицензией). К примеру, в редакции “Малый бизнес” количество сайтов равно двум.
Очень приятная новость, не правда ли?
Но не все так радужно o_O Работать все сайты будут с одним ядром системы, в одной файловой системе, в одной админке, в одном и том же “Эрмитаже” и база зарегистрированных учетных записей у всех сайтов будут одна. Самое плохое во всей этой ситуации, то что мы не можем разграничить уровни доступа так чтобы администраторы имели полный доступ только к настройкам одного или другого сайта. Ограничение уровней доступа будет происходить на уровне информационных блоков.
Существует два способа создания многосайтовости. Первый – это создание сайтов в подкаталогах и его я сегодня рассматривать не буду 🙂
Сегодня будем рассматривать второй способ – создание многосайтовости на разных доменах.
Забегая в перед скажу, что весь способ строится на создании символических ссылок на директории ядра, а поэтому нам нужен будет ssh доступ от файловой системы хостинга или в крайнем случае файловый менеджер хостера должен уметь создавать символические ссылки прямо их вебморды.
Итак, определимся что доменных имен (как и сайтов) у нас будет 2 – webnoob.ru и new.webnoob.ru.
Директории для данных доменов будут /var/www/webnoob.ru и /var/www/new.webnoob.ru соответственно.
Шаг 1.
На этом шаге устанавливается и настраивается дистрибутив первого сайта (/var/www/webnoob.ru). Его мы тоже пропустим тк это тема для отдельного поста и может быть, когда-нибудь у меня дойдут руки и до него.
Шаг 2.
Подготавливаем систему. Заходим в административную часть и переходим в раздел Список сайтов (Администрирование – Настройки – Настройки продукта – Сайты – Список сайтов) и видим перед собой список всех сайтов.
Переходим в настройки нашего единственного сайта (s1), и заполняем все параметры, отмеченные красной стрелочкой. Все они оч важные в дальнейшем и пропуск одного из параметров может в дальнейшем привести к ошибкам в работе доп. сайтов.
Для того чтобы не писать весь путь до папки с сайтом, просто нажмите на ссылку “вставить текущий”.
После этого можете нажать на кнопку “Сохранить”. На этом шаг 2 завершен.
Шаг 3.
Создаем новый сайт в системе хостинг-провайдера. Важно, чтобы директория нашего нового сайта лежала в одной файловой системе с главным сайтом и не находилась внутри его директорий.
Выше мы уже определились что нашими директориями будут /var/www/webnoob.ru (главный сайт) и /var/www/new.webnoob.ru (новый сайт).
Из директории главного сайта (/var/www/webnoob.ru) переносим файлы index.php и acсess.php в директорию нашего нового сайта.
И приводим acсess.php к нижеприведенному виду:
1 2 3 4 |
<? $PERM["index.php"]["6"]="W"; $PERM["/"]["*"]="R"; ?> |
Шаг 4.
Создаем символические ссылки на директории главного сайта.
Описывать я буду ситуацию, когда у нас есть доступ к ssh удаленного сервера, будь то VPS или виртуальный хостинг. Если у Вас нет таких доступов, то я порекомендовал бы в первую очередь задать вопрос о наличии ssh доступа у вашего хостинг-провайдера той же тех. поддержке.
Подключаемся, выполняем команды заменяя мои адреса-своими:
1 |
ln -s /var/www/webnoob.ru/bitrix /var/www/new.webnoob.ru |
(ссылка на директорию ядра Битрикс)
1 |
ln -s /var/www/webnoob.ru/upload /var/www/new.webnoob.ru |
(ссылка на директорию загрузок)
Вам может понадобится перенести полностью папку с шаблонами сайта и с шаблонами компонентов, к примеру, если вы решили создать клон главного сайта. В этом случае я поступил так: перенес директорию /var/www/webnoob.ru/bitrix/templates в директорию /var/www/new.webnoob.ru/local/templates
1 |
cp -a -T /var/www/webnoob.ru/bitrix/templates/ /var/www/new.webnoob.ru/local/templates/ |
(в этом случае директории local и templates должны быть заранее созданы).
Шаг 5.
Копируем файл .htaccess из исходной директории в нашу вновь сознанную директорию new.webnoob.ru:
1 |
cp /var/www/webnoob.ru/.htaccess /var/www/new.webnoob.ru/.htaccess |
Шаг 6.
На данном шаге, зайдем по адресу второго сайта (new.webnoob.ru) и войдем в админку (new.webnoob.ru/bitrix) и перейдем в уже знакомый нам раздел “Список сайтов” (Администрирование – Настройки – Настройки продукта – Сайты – Список сайтов).
Здесь, сверху таблицы нажимаем на кнопку добавить сайт и проделываем все ровно тоже самое что на скриншотах выше (шаг 2).
ID сайта будет s2
Путь до корневой папки также вставляем, щелкнув по ссылке “вставить текущий”.
В самом низу страницы настроек, выбираем существующий шаблон сайта либо запускаем мастер готовых решений и устанавливаем существующие в системе гот.решения или скачиваем их с маркетплейса.
На этом все… если есть какие-то вопросы или замечания по статье, велком в комменты.
Вроде рабочий вариант, но в конце еще надо не забыть скопировать файл .htaccess
Благодарю! Действительно, упустил этот момент 🙁