Drupal 8 multisite多網站安裝

drupal multisite的好處是模組可以共用,更新其中一個網站,其他次網站也都一併更新,如果資料庫分別設成不一樣的資料庫,就可以實現多網站+共用網頁檔案+獨立資料庫的架構,日後方便更新與維護。

0.如果資料庫分別要各自獨立,請先分別在MySql中設定好不同的site的資料庫的管理帳密。

1.設定Apache路徑檔

本例是要架設2個次網站:www1.xxps.tp.edu.tw  和  www2.xxps.tp.edu.tw
Ubuntu的請找到Apache的設定檔,設定檔的位置參考此篇Ubuntu Apache啟用虛擬多網站(VirtualHost) 的路徑設定好如下的格式:

<VirtualHost *:80>
ServerName www1.xxps.tp.edu.tw
DocumentRoot /網站目錄/drupal8  <===drupal根目錄
</VirtualHost>
<VirtualHost *:80>
ServerName www2.xxps.tp.edu.tw
DocumentRoot /網站目錄/drupal8  <=== 一樣是drupal根目錄
</VirtualHost>

2.新增次網站的根目錄
drupal8/sites/下新增次網站的根目錄,建議使用完整的網域名稱,以第1步驟為例,則應該分別
drupal8/sites/下新增”www1.xxps.tp.edu.tw” 和”www2.xxps.tp.edu.tw” 兩個資料夾。

3.[Drupal 8 新方式]:
drupal8/sites/example.sites.php 改名為sites.php,權限設定為664。
開啟sites.php,加入上述兩個子網域網站,並指向個別的資料夾,修改後存檔:

$sites = array(
‘www1.xxps.tp.edu.tw’ => ‘www1.xxps.tp.edu.tw’,
‘www2.xxps.tp.edu.tw’ => ‘www2.xxps.tp.edu.tw’,
);

式為:‘<port>.<domain>.<path>’ => ‘directory’,詳細設定請自行參考example.sites.php

4.[Drupal 8 新方式]:
drupal8/sites/default/default.settings.phpdefault.services.yml複製到前面兩個次網站剛剛新增的根目錄下,並且分別改名為settings.phpservices.yml,權限設定為666。

5.[Drupal 8 新方式]:
在前面兩個次網站的根目錄下再分別新增資料夾”files“,權限設定為777或775;
另外,Drupal8在安裝時可直接指定安裝語言包,不必像D7另外安裝了!
如果要安裝繁體中文介面,請記得另外在files下新增translations子資料夾,權限設定為777或775

6.開啟瀏覽器,輸入次網站的網址,例如上面的www1.xxps.tp.edu.twwww2.xxps.tp.edu.tw ,就會出現drupal安裝畫面,接下來,按下一步…安裝即可。

7.安裝完畢,收工前,請記得將第3步驟的settings.php設定檔權限改為444,以保護網站安全。

備註:如果安裝模組或版型時顯示錯誤,可以將drupal8/themedrupal8/sites/www1.xxps.tp.edu.tw 的owner權限改為www-data即可。

【參考文章】:http://www.kalose.net/oss/drupal-8-setting-multi-site/