您好我正在开发一个 CodeIgniter 应用程序,为用户提供他们自己的网站。
我要完成的工作:如果用户有一个帐户,他们有自己的子域(例如:user.website.com),并且默认控制器变为“user_website”,如果网站可以正常访问(无子域)默认控制器是“网站”。
当用户访问他们的部分时,我有一个方法,例如称为“测试”
因此,要访问该用户,请访问:user.website.com/user_website/test
我想要发生的是:user.website.com/test
所以基本上我要问的是,如果有一个子域在使用中直接访问控制器的访问方法,而无需将控制器放在 url 中,我该如何获取 codeigniter。
因此,它不会使用 user.website.com/auth 去 auth 控制器,而是使用 user_website 控制器的 auth 方法
如果有人可以帮助我解决这个问题,或者指出我正确的方向,在此先感谢。
这里还有来自 MY_Controller 的 _remap 函数,我的所有控制器都扩展了它。
public function _remap($method, $arguments)
{
if (method_exists($this, $method))
{
call_user_func_array(array($this, $method), array_slice($this->uri->rsegments, 2));
}
else
{
show_404(strtolower(get_class($this)).'/'.$method);
}
$this->_load_view();
}