Codeigniter重新路由除了控制器之外没有

时间:2013-04-15 08:58:37

标签: php codeigniter

我正在努力做与该问题中所写的相同的事情: Codeigniter: send all requests that do not match a controller's name to the default controller。所以我试图在id与控制器名称不匹配时调用函数。所以这就是我在confgi / routes中所做的:

$route['default_controller'] = "main";
$route['404_override'] = '';
$route['page/privacy-policy'] = "pages/privacyPolicy";
$route['u/(:any)'] = "profile/show/$1";
$route['(:any)'] = "login/show/$1";

所以,如果我去url

mypage.com/myname 

它进入登录/显示哪个很好,但问题是,如果我输入

mypage.com/main

并且stils进入登录/显示。任何想法如何改变这种行为?

如果我输入

mypage.com

它也会进入登录/显示。

1 个答案:

答案 0 :(得分:0)

我认为$route['(:any)']将匹配任何URI请求集。 如果您希望所有控制器都是安全的,您必须从SecureController扩展它们并在SecureController的构造函数中设置登录验证检查。