Мультисайтинг на Drupal 8

Drupal: 
Уровень сложности: 

Одна установка Drupal 8 может обеспечивать работу нескольких сайтов: на разных адресах или на поддоменах. Для версии Drupal 8 необходимо явно включить мультисайтинг, создав файл sites/sites.php. И тогда вам не придётся для разных сайтов заново устанавливать Drupal - достаточно создавать папки сайтов в папке sites установленного Drupal на главном домене.

В настоящее время Drupal 8 развивается, поэтому, конечно, будет сложно производить тонкие настройки отображения блоков, выбора шаблона для разных сайтов, правила показа материалов, создавать одинаковые сайты для городов, различающиеся некоторыми параметрами. Некоторые задачи будет сложно решить, но вы можете настроить мультисайтинг.
Следующие настройки помогут начать пользоваться одной системой Drupal для разных сайтов. Оригинал статьи: https://www.drupal.org/node/2297419

Настройка мультисайтинга на Drupal 8 совпадает с прежними версиями. На Drupal 8 нужно явно включить опцию мультисайтинга.

Включить мультисайтинг с sites.php

Мультисайтинг требует присутствия файла sites.php в папке sites. По умолчанию такого файла нет. Если у вас нет такого файла:

1) скопируйте sites/example.sites.php в sites/sites.php

 

Папки сайтов

При включенном мультисайтинге каждый сайт относится к своей папке внутри папки sites. Главный Drupal-сайт относится к папке sites/default. Дополнительные сайты создаются при помощи создания дополнительных папок, например:

  • sites/site1
  • sites/site2

Каждая папка сайта должна содержать файл настроек settings.php, чтобы Drupal распознавал этот сайт. Для первичной установки сайта:

2) скопируйте sites/default.settings.php в новую папку вашего сайта, например, командой bash:

$ cp sites/default/default.settings.php sites/[new site directory]/settings.php

 

Дополнение от тлито:

Для новичков: настройки доменов для мультисайтинга

Чтобы сайты работали с одной системой Drupal, нужно настроить DNS этих доменов (или поддоменов). Все домены в настройках вашего сервера должны указывать на папку главного сайта. Как это делается? Для разных хостингов и панелей управления эти настройки выполняются по-разному. Я рекомендую обратиться к службе поддержки хостинга, чтобы узнать как это делать.

Например, на виртуальном хостинге beget после добавления домена на сайт нужно составить тикет и попросить перенаправить домен на папку вашего главного домена.
На виртуальном хостинге It-patrol (специализированный хостинг для Друпал) также нужно обращаться в поддержку с просьбой настроить DNS добавленных доменов.
На хостинге Jino это делается созданием в папке domains символической ссылки с названием домена, ведущей на ваш основной домен.
На VPS-хостинге нужно правильно настроить хост веб-сервера (Apache, Nginx или других веб-серверов).

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

Проверить настройку DNS

Когда вы или ваш хостер настроили домены на одну папку, проверить правильную работу можно так: сделайте http-запрос к любому текстовому файлу на сайте, например, README.txt, который всегда есть в корне Drupal 8. Откройте его с разных адресов (доменов):

  • site1.ru/README.txt
  • site2.ru/README.txt

Если файл открывается, значит вы правильно настроили DNS и веб-сервер, и скорее всего, php-файлы тоже будут работать, тогда можно настроить эти сайты на Drupal.

Рубрика: