我正在使用 MVC 框架 (Yii) 创建一个网站,我需要动态创建子域,即http://company.website.com
因此,为了实现此目的,我添加了 DNS 通配符 (*.website.com)。现在的问题是我的应用程序控制器对于www.website.com 和company.website.com 都是相同的。例如,我有一个User
控制器与Register
行动 (user/register
)。现在如果我去www.website.com/user/register我可以注册,但我可以exactly如果我去的话也是一样company.website.com/user/register。对于我的所有控制器来说,这种行为都是相同的。
我意识到一切正常,但如何分离 www.website.com 和 compnay.website.com 的控制器?我不希望用户从 subdomian url 访问注册/登录/其他控制器和操作。
任何建议将不胜感激!
谢谢你!
您可以将主机名包含到路由规则数组中。例如,您可以创建规则
array(
'http://www.website.com/user/register' => 'user/register',
'http://<company:\w+>.website.com/user/register' => 'other/route',
)
并检查company
你的参数other/route
行动。请注意http://
是这些规则发挥作用所必需的。看浏览器管理器文档以获取更多详细信息。
附:如果控制器为http://www.website.com
and http://company.website.com/user/register
完全不同,最好为这些站点设置两个应用程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)