为多个域配置symfony项目

abh*_*bhi 6 php symfony1

我们有一个用PHP Symfony框架开发的产品.我们现在有几个客户为我们维护不同的代码库和数据库(MySql).

他们使用client1.myproduct.com和client2.myproduct.com等子域访问各自的代码库

现在我们想为两个客户端创建一个代码库,并且只在不同的子域中保留两个不同的文件(就逻辑而言).

因此,两个子域都将指向相同的代码库,但是只要需要,即每当客户端的某些功能的逻辑不同时,它们将从各自的子域访问文件.

任何人都可以建议最好的方法是什么?

小智 5

网站:[foo.com、bar.co.uk、www.mike.es]

// index.php
require_once(dirname(__FILE__).'/../config/ProjectConfiguration.class.php');

// get the domain
$domain = $_SERVER['SERVER_NAME'];

// get rid of www, com, es etc ...
foreach(array('www.', '.com', '.es', '.co.uk') as $crap) {
    $domain = str_replace($crap, '', $domain);
}
$confs = array(
    'foo' => 'somefoo',
    'bar' => 'somebar',
    'waz' => 'andwazconfig'
);
$cfg = (!empty($confs[$domain])) 
    ? $confs[$domain] 
    : 'default';

$configuration = ProjectConfiguration::getApplicationConfiguration($cfg, 'prod', false);

sfContext::createInstance($configuration)->dispatch();

// End of index.php
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助