Многосайтовые настройки немного сложны из-за их использования одной и той же кодовой базы. В этом сценарии можно использовать настройку с несколькими сайтами, но имейте в виду, что при обновлении модуля в sites/all/modules
нем будут затронуты все сайты (если они не переопределены sites/$SITENAME/modules
).
Это приводит к потенциальным проблемам, когда один из ваших сайтов использует N-версию модуля, но вы хотите использовать N + 1 на другом сайте. У рассматриваемого модуля может не быть пути обновления, или он мог радикально изменить свою функциональность между версиями (не так редко, как вы думаете, учитывая культуру Drupal по отношению к основным версиям).
Кроме того, если во время обновления модуля потребуются критические изменения базы данных, вы обнаружите, что вам нужно отключить несколько сайтов одновременно, чтобы обеспечить работу update.php
.
Таким образом, для большинства случаев использование мультисайтов - не тот путь. Если вы действительно не ограничены в пространстве или у вас есть какое-то странное ограничение хостинга, которое не позволяет вам сопоставлять домен каждого сайта в отдельную папку, вам, вероятно, лучше поддерживать отдельные базы кода и использовать такие инструменты, как Drush и контроль версий, чтобы ускорить код развертывание.
Прототип типичного варианта использования для нескольких сайтов, за исключением его использования в качестве обходного пути для ограничивающих хостов, - это когда вы развертываете тонну очень похожих сайтов. Возможно, вы пользуетесь услугой хостинга, или создаете кучу микросайтов для компании, или что у вас есть. В этих случаях вы можете выполнить свою собственную установку для нескольких сайтов, но вам также следует подумать об использовании Aegir , который автоматизирует и устраняет многие трудности, связанные с запуском такой установки.
Добавление новых сайтов для установки на несколько площадок довольно просто: создать новую папку в sites
, редактировать sites/sites.php
(Drupal 7 только), скопировать sites/default/default.settings.php
в settings.php
в этой новой папке, а также посетить сайт в браузере. Drupal должен начать процесс установки и использовать новую папку. Ваш новый сайт будет иметь доступ ко всем модулям так sites/all/modules
же, как и ваши предыдущие сайты.
git clone git@my.repository.com:/base.git newsite
чтобы получить чистую окружающую среду.Я бы использовал мультисайт, где у вас есть предложения по содержанию, но для разных аудиторий.
Например, мы используем его для нашей интрасети, которая поддерживает несколько брендов. Это позволяет администрировать каждый бренд индивидуально с возможностью делиться контентом / пользователями (огромная экономия времени при уменьшении дублирования).
Кроме того, наличие уникального интерфейса (меню / блоки / тематические) имеет большое значение для обеспечения того, чтобы различные отделы могли легко получить доступ к тому, что для них наиболее важно.
Множество функций доступно с использованием доменного доступа, например, позволяет пользователю установить свой сайт по умолчанию, разные сайты по субдоменам (таким образом, вы можете иметь marketing.intranet.local или engineering.intranet.local и т. Д.), Поиск между сайтами, контроль доступа и т. Д. ,
источник