我正在使用codeigniter开发一个Web应用程序。我在控制器中创建了一个名为" Administration"的文件夹。在这个文件夹中,我保留了所有与管理面板相关的控制器。
现在,我希望如果任何用户将网址键入www.mywebsite.com/administration,则应将用户重定向到相应的控制器,无论管理后的下一个网段是什么。如果用户键入wwww.mywebsite.com/administration/login,则应执行登录控制器。嗯,这是非常明显的事情。
现在我想要的是,当有人输入www.mywebsite.com/anything_else时,默认情况下应将其定向到其他控制器。我正在使用以下路线设置:
$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['administration/(:any)']='administration/$1';
$route['(:any)']='fetch_pages';
请指导。
答案 0 :(得分:0)
我建议你采取另一种方法:
$route['default_controller'] = 'welcome';
$route['404_override'] = 'fetch_pages/index';
此解决方案使您能够跳过声明显而易见的administration
路由,并且将通过fetch_pages
控制器调用所有其他路径。
根据您的需求,当您无法根据show_404()
查找数据时,可能需要考虑运行uri。
答案 1 :(得分:0)
$route['^(?!administration).*'] = "fetch_pages";
$route['administration/(:any)']='Administration/$1';
我认为你创建了大写字母的文件夹" A"在管理