重写URL,但有PHP读取旧的URL

在我的平台上,每个用户都有自己的configuration文件。 该文件是由他们创build的子域命名的。

例:

user1.domain.com user2.domain.com user3.domain.com 

系统通过$ _SERVER ['SERVER_NAME']读取URL并抓取子域。 然后它根据子域查找适当的configuration文件。

例:

 if the url is user1.domain.com the system looks up user1.config.php. 

每个用户都可以select使用自己的域名。 我现在正在通过指出Alogging来做到这一点。

例:

 user 1 points theirDomainName.com to my IP address via their A record 

我怎样才能使用htaccess所以url读取他们的theirDomainName.com但平台(PHP)的后端读取user1.domain.com因此平台知道拉user1.config文件

不用在.htaccess重写规则,通过在PHP脚本中进行映射来维护会更简单。

该数组应该映射域名到用户名,所以你会知道如何做你的包括。 如果你害怕改正现有的脚本,你甚至可以根据它来更新$ _SERVER ['SERVER_NAME']。

例如,你可以这样做:'user1.domain.com','domain2.com'=>'user2.domain.com','domain3.com'=>'user3.domain.com';

 if (!array_key_exists($_SERVER['SERVER_NAME'], $clients)) { header('Location: http://domain.com/invalidclient'); exit; } $_SERVER['SERVER_NAME'] = $clients[$_SERVER['SERVER_NAME']]; 

虽然不是最好的做法,覆盖超级全局,没有什么阻止它,它给你一个非常简单的解决scheme。