1

在我的 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”功能。任何想法都非常感谢。

4

3 回答 3

0

好的,我必须向所有回答浪费时间的人道歉。我发现这个问题是我的“home”构造函数中的一个条件,它采用了一个 URI 段并测试了它的有效性,如果它无效则返回 404。当然,由于根没有 URI 段,它返回无效。我通过在测试其有效性之前检查 URI 段的存在来修复它。感谢大家的帮助。

于 2013-08-09T13:12:01.967 回答
0

尝试这个

$route['default_controller'] = "home";

并将 region_select 函数的内容放入 home 控制器的 index 函数中,看看会发生什么。

也许它会起作用。

如果您遇到任何问题,请告诉我。

于 2013-08-09T12:15:07.133 回答
0

尝试这个:

$route['default_controller'] = "home/region_select/";
$route['404_override'] = '';
于 2013-08-09T11:29:34.217 回答