一个服务器,多个域,共享PHP MVC

时间:2010-10-27 16:17:12

标签: php mysql apache model-view-controller lamp

我想制作一个支持php的网站的区域版本,例如:

www.mysite-england.co.uk 
www.mysite-wales.co.uk 
www.mysite-scotland.co.uk 

我想设置一个LAMP服务器,使用$_SERVER['HTTP_HOST'](或类似)作为主要内容修饰符,使用单个php MVC为所有域提供服务。即

if($_SERVER['HTTP_HOST'] == 'mysite-wales.co.uk'){
   $region =    'wales';
   $database =  'db_wales';
   $styles=     array('wales.css', 'wales_banners.css')
   etc etc....    
}

如何设置服务器以将所有这些域指向单个服务器上的同一MVC路由器?

2 个答案:

答案 0 :(得分:2)

为主站点配置Apache虚拟主机,并使用ServerAlias指令使其接受其他域的连接。

<VirtualHost *:80>
ServerName mysite-england.co.uk
ServerAlias *.mysite-england.co.uk *.mysite-wales.co.uk mysite-wales.co.uk *.mysite-scotland.co.uk mysite-scotland.co.uk
DocumentRoot /www/mysite
</VirtualHost>

更多信息:

答案 1 :(得分:0)

我在上一份工作中做了很多。您所做的就是在vhost点中所有域中的相同代码库。除了定义变量(I.E.站点名称,区域)之外,代码库不会关心区别。只需将服务器别名添加到vhost并在引导程序的顶部运行一个开关。