在我的codeigniter项目中,我的所有路由都正常工作,除了default_controller,它总是返回404.我的路由示例:
$route['(:any)/(:any)/(:any)'] = 'home/$3'; // Region / language / page
$route['(:any)/(:any)'] = 'home/index'; // Region / language
$route['default_controller'] = "home/region_select";
因此,当用户首次访问该网站时,我们的想法是转到default_controller,在那里他选择一个区域。所有其他路线都有效。在“Home”控制器中,我有一个“region_select”功能。任何想法都非常赞赏。
答案 0 :(得分:0)
试试这个:
$route['default_controller'] = "home/region_select/";
$route['404_override'] = '';
答案 1 :(得分:0)
试试这个
$route['default_controller'] = "home";
并将region_select函数的内容放入家庭控制器的索引函数中,看看会发生什么。
可能会起作用。
如果您遇到任何问题,请告诉我。
答案 2 :(得分:0)
好的,我要向所有回答浪费时间的人道歉。我发现问题是我的'home'构造函数中的一个条件,它接受了一个URI段并测试了它的有效性,如果它无效则返回404。当然,由于根没有URI段,因此返回无效。我通过在测试其有效性之前检查URI段的存在来修复它。感谢大家的帮助。