这就是我需要做的事情:
我在CakePHP中创建一个网站,我需要根据用户用来访问我网站的子域来显示不同的内容(徽标,图片等)。例如:假设有3个子域:
所有三个子域都将指向我的CakePHP应用程序所在的服务器中的同一文件夹。我想知道如何获得用户使用的子域名,以便根据具体情况显示不同的内容。
我不知道这是否会影响我的问题,但还有一件事。用户实际上不会使用子域链接。他们将使用重定向到sud-domains的其他域。例如,用户将进入www.whateverdomain1.com,他将被重定向到subdomain1.mydomain.com。但是,我被告知用户实际上看不到重定向,他总是会看到他使用的www.whateversomain1.com。
有什么想法吗?非常感谢提前!
答案 0 :(得分:0)
我能想到的最简单的方法是让您的网络服务器将请求从sub.domain.com重定向到domain.com/sub,然后使用路由配置重定向。
在路线配置中 - 您有两个选项,要么使用前缀(http://book.cakephp.org/view/945/Routes-Configuration#Prefix-Routing-950),要么设置命名参数:
Router::connect(':subdomain/:controller/:action/:id', array('id' => '[0-9]+'));
然后在您的控制器中,您可以通过
进行检查$this->params
查看子域名是什么,并相应地设置变量。