CakePHP:获取用于在我的页面中登录的域(地址)

CakePHP:获取用于在我的页面中登录的域(地址),cakephp,redirect,get,dns,Cakephp,Redirect,Get,Dns,这就是我需要做的: 我正在用CakePHP创建一个站点,根据用户访问我的站点所使用的子域,我需要在其中显示不同的内容、徽标、图片等。例如:假设有3个子域: subdomain1.mydomain.com subdomain2.mydomain.com subdomain3.mydomain.com 所有三个子域都将指向我的CakePHP应用所在的服务器中的同一文件夹。我想知道如何获得用户使用的子域,以便根据需要显示不同的内容 我不知道这是否会影响我的问题,但还有一件事。用户实际上不会使用子域链接

这就是我需要做的:

我正在用CakePHP创建一个站点,根据用户访问我的站点所使用的子域,我需要在其中显示不同的内容、徽标、图片等。例如:假设有3个子域:

subdomain1.mydomain.com subdomain2.mydomain.com subdomain3.mydomain.com 所有三个子域都将指向我的CakePHP应用所在的服务器中的同一文件夹。我想知道如何获得用户使用的子域,以便根据需要显示不同的内容

我不知道这是否会影响我的问题,但还有一件事。用户实际上不会使用子域链接。他们将使用重定向到sud域的其他域。例如,用户将进入www.whateverdomain1.com,他将被重定向到subdomain1.mydomain.com。然而,我被告知用户实际上不会看到重定向,他总是会看到他使用的www.whateversomain1.com


有什么想法吗?非常感谢

我认为最简单的方法是让Web服务器将请求从sub.domain.com重定向到domain.com/sub,然后使用路由配置从那里重定向

在路由配置中,您有两个选项,使用前缀或设置命名参数:

Router::connect(':subdomain/:controller/:action/:id', array('id' => '[0-9]+'));
在控制器中,您可以通过

$this->params
查看子域是什么,并相应地设置变量