我的控制器目录的结构:
--Controller
--frontend
--user_controller
当我调用默认控制器时,它会显示404 page not found
路线我已设定:
$route['default_controller'] = "frontend/user_controller";
$route['admin_panel/site'] = "site";
$route['admin_panel'] = "backend/admin_controller/dashboard";
$route['admin_panel/login'] = "backend/admin_controller/index";
$route['admin_panel/(:any)'] = "backend/admin_controller/$1";
$route['admin_panel/(:any)/(.*)'] = "backend/admin_controller/$1/$2";
当我运行http://localhost/example/frontend/user_controller
时,它就会起作用。
但是没有使用此网址:http://localhost/example
答案 0 :(得分:0)
请尝试:在底部移动默认控制器
$route['admin_panel/site'] = "site";
$route['admin_panel'] = "backend/admin_controller/dashboard";
$route['admin_panel/login'] = "backend/admin_controller/index";
$route['admin_panel/(:any)'] = "backend/admin_controller/$1";
$route['admin_panel/(:any)/(.*)'] = "backend/admin_controller/$1/$2";
$route['default_controller'] = "frontend/user_controller";
答案 1 :(得分:0)
Codeigniter
不允许default controller
位于子目录中。
您必须将其重写为
$route['default_controller'] = "user_controller";
并将其直接放在controller
文件夹
您可以参考this thread来避免这种情况。但我没有测试过它。
最好避免核心功能,因为它可能会影响更新。
答案 2 :(得分:0)
我没有对此进行过测试,但您可以使用它来绕过子文件夹吗?
$route['frontend'] = 'frontend/user_controller';
$route['default_controller'] = 'frontend';
虽然你没有指定要加载的方法,但需要确保那里有'公共函数索引()'...