代码点火器中的路由问题


Routing issues in Codeigniter

我正在开发一个带有codeigniter的Web应用程序。我在控制器中创建了一个名为"管理"的文件夹。在此文件夹中,我保留了与管理面板相关的所有控制器。

现在,我希望如果任何用户键入 url 作为 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';

请指导。

我建议你做另一种方法:

$route['default_controller'] = 'welcome';
$route['404_override'] = 'fetch_pages/index'; 

此解决方案使您可以跳过声明明显的administration路由,所有其他路径都将通过控制器调用fetch_pages

阅读更多 关于 404_override

根据需求,可能需要考虑在无法找到基于 uri 的数据时运行show_404()

$route['^(?!administration).*'] = "fetch_pages";
$route['administration/(:any)']='Administration/$1';

我认为您在管理中创建了大写字母"A"的文件夹