需要下一个: 我使用codeigniter 2.02 我用htaccess
删除了index.php我有控制器帖子和路线
$route['(:any)'] = "post/index/$1";
我得到了我想要的东西:domain.com/14代替domain.com/post/14
但现在我有下一个我想要的控制器:登录,会员等。
但是如果我去domain.com/login我被重定向到domain.com ...所以如果有人可以给我解决方案,那么我可以去登录控制器......用路线的一些正则表达式!
这是我的路线:
$route['default_controller'] = "index";
$route['404_override'] = '';
$route['(:any)'] = "post/index/$1";
$route['signup/(:any)'] = "signup/index/$1";
和hier是我需要的效果:
domain.com/camera-33455-cannon-2001
domain.com/samsung-6678-new-gallaxy-2
并获得其他控制器,如
domain.com/signup
TNX
答案 0 :(得分:3)
路由按照它们在routes.php
文件中的显示顺序进行处理。因此,如果您将控制器放在最前面,(:any)
应该只处理之前未处理的任何内容。
尝试将其更改为:
$route['default_controller'] = "index";
$route['404_override'] = '';
$route['signup/(:any)'] = "signup/index/$1";
$route['(:any)'] = "post/index/$1";
答案 1 :(得分:2)
您是否只想要post/index
路线的号码?你可能最好使用它:
$route['default_controller'] = "index";
$route['404_override'] = '';
$route['signup/(:any)'] = "signup/index/$1";
$route['(:num)'] = "post/index/$1";
这样,/15
会重定向到/post/index/15
,但/bob
仍会加载Bob
控制器。