您在這裡

Multi-Sites 架設失敗

jasonccliu's 的頭像
jasonccliu 在 2009-06-21 (周日) 23:11 發表

請問大家:
追了許多大家對於multi-sites的設置方式,最後還是一直有問題,請幫忙指導,感恩。

目的:
架設二個子網站,使用相同user DB,各別的content DB,共用一份source code
網站結果:
default site: http://localhost/drupal
site1: http://localhost/drupal/site1
site2: http://localhost/drupal/site2

問題:
瀏覽這個網站時,只有出現AppServ的畫面!
查看Apache的error log出現file does not exist的訊息!!
-> 請問,Apache或PHP.ini需要特別再設定嗎?

設置方式:
1. d:\appserv\www\drupal\ -> 新增二個目錄site1, site2
2. 在新增目錄建立themes, modules, files等資料夾
3. copy default目錄的default.settings.php,並修改檔案,放到site1,site2目錄下
4. 分別設定settings.php
$db_prefix = array(
'default' => 'site1_',
'users' => 'shared_',
'sessions' => 'shared_',
'role' => 'shared_',
'authmap' => 'shared_',
);

5. 打開IE,輸入網址http://localhost/drupal/site1

multisite的目錄放錯位置,應該是
d:\appserv\www\drupal\sites\ 下面新增目錄,例如:
d:\appserv\www\drupal\sites\default\
d:\appserv\www\drupal\sites\site1\
d:\appserv\www\drupal\sites\site2\

而瀏覽器要鍵入:http://site1.XXX.XXX/
若是用virtual host,就要注意apache的設定對不對?

Install Drupal
Copy the "/sites/default" directory and its contents to "/sites/example.com.subdirectory"
Create a new database
Configure "/sites/example.com.subdirectory/settings.php"
Create a symbolic link from inside your Drupal root that points to your Drupal root. (e.g. ln -s /var/www/example.com subdirectory)
Navigate to example.com/subdirectory/install.php
Repeat for as many subdirectories as you like

加粗的是重點
必要時還要修改$base_url

Create a symbolic link from inside your Drupal root that points to your Drupal root. (e.g. ln -s /var/www/example.com subdirectory)

這個方式,似乎只能用在unix-like的環境下,
樓主是windows環境,應該是沒辦法做到這個方式的吧?

我也是想要呈現這樣的結果:
default site: http://localhost/drupal
site1: http://localhost/drupal/site1
site2: http://localhost/drupal/site2

但是,牽涉到沒法下 ln .....

另外想到有可能解決的方式是從 apache 的 virtual host 來去改設定,
讓在瀏覽器下 http://localhost/drupal/site1
會連到 d:\appserv\www\drupal\sites\site1\
有人有試過類似的方式嗎?

....server不是自己管的~真的很麻煩...想試個東西~都得過個三關才能改設定....

以學習的角度, 可以自建LINUX平台. 又或者WINDOWS平台下就有全權控制
以使用角度, 既然無法, 退一步海闊天空, 不熟悉地架設Multi-Sites, 麻煩更多, 不是嗎 ?? ^.^
如果純以方便更新管理來說, 退一步看也方便不了多少, 沒有用也只是將一份複製成多份, 沒化多少時間.

Windows 下可以透過設定Apache 的 Alias來解決沒法使用symbolic link 這問題 ^_^