2014-05-02 66 views
0

我在CakePHP的社交网站上编写代码example.com,这里的用户配置文件位于example.com/profiles/user1。现在我需要向用户提供功能,以便使用他们的自定义域进行配置文件。例如user1.com应呈现内容example.com/profiles/user1CakePHP中的自定义域映射

请为我的问题建议我最好的解决方案。我正在致力于共享主机 - Linux服务器。

回答

0

假设你们俩在DNS中有一个通配符记录和web服务器被配置为从这些主机名称为你的蛋糕项目(如何做这些事情将取决于您的托管服务提供商),然后(与感谢Subdomaining with Cake ),你只需要放在app/config/bootstrap.php如下:

$subdomain = substr(env('HTTP_HOST'), 0, strpos(env('HTTP_HOST'), '.')); 
if(strlen($subdomain)>0 && $subdomain != 'www') { 
    $_GET['url'] = 'user/' . $subdomain . '/' . (isset($_GET['url']) ? $_GET['url'] : ''); 
} 
+0

没有明白!你能详细说明这些步骤吗? – user3555483

+0

我很困惑,子域需要做什么。 – user3555483

0

对于这个功能,你需要点user1.com到example.com/profiles/user1

为此,我能想到的两种方法:

1.名称服务器方法:

你可以改变user1.com的名称服务器的example.com域名服务器,如:

ns1.example.com

NS2 .example.com

注意:这可能需要3-4小时才能工作

2. URL转发方法:

您也可以使用URL转发将user1.com指向example.com。 这会给你转发的基本想法http://support.godaddy.com/help/article/422/forwarding-or-masking-your-domain-name

+0

-1只是将一个域的名称服务器更改为另一个域的名称服务器将导致* lame delegation *,这将完全中断该域:已将更改了委派的名称服务器必须首先配置为服务该区域(并且事件,代表团完全没有任何关于这个问题)。 – eggyal