我已經完成了與Yii所以是的,這是可能的。
在Apache的設置,確保所有的域名指向同一個目錄(使用ServerAlias - http://httpd.apache.org/docs/2.2/mod/core.html#serveralias)。
在我的數據庫我創建了一個表,一排每個網站,存儲域名作爲的領域之一。
在我ApplicationConfigBehavior.php ::的BeginRequest(這是爲每個請求執行的),我做了這樣的事情:
/**
* Load configuration that cannot be put in config/main
*/
public function beginRequest()
{
if(empty(Yii::app()->session['community'])){
$current_community = Community::model()->with(array(
'communityHosts'=>array(
'joinType'=>'INNER JOIN',
'condition'=>'`communityHosts`.hostname= :hostname',
'params' => array(':hostname' => $_SERVER['SERVER_NAME'])
),
))->find();
Yii::app()->session['community'] = serialize($current_community);
}
else{
$current_community = unserialize(Yii::app()->session['community']);
}
if(!empty($current_community)){
Yii::app()->name = $current_community->name;
Yii::app()->params['currentCommunity'] = $current_community;
Yii::app()->language = $current_community->language;
}
else{
//TODO: Throw error
session_unset();
die('Hostname ' . $_SERVER['SERVER_NAME'] .' not found');
}
}
這基本上說,會在我的數據庫此服務器名,獲得當前「社區」(我的網站),並在會話中存儲所有設置(主題,網站名稱等)。
確切的查詢可能不適合你一樣。這只是給你一個大概的想法。將其調整到您的數據庫模式,或者您存儲每個網站的設置。
http://stackoverflow.com/questions/15109494/how-to-reuse-code-across-multiple-domains – redGREENblue
謝謝RGB,但這不是我想要的,我已經按照我的要求編輯了問題。 –