Codeigniter URL重写以隐藏控制器和方法名称

时间:2013-06-13 10:49:01

标签: php codeigniter codeigniter-url codeigniter-routing

我当前的网址是universitytwig.com/user/userprofile/cm.cm,其中user是控制器,userprofile是方法,cm.cm是参数。如何将此网址更改为universitytwig.com/cm.cm通过route.php或从数据库路由,或通过.htaccess

2 个答案:

答案 0 :(得分:2)

尝试添加

$route['cm.cm'] = 'user/userprofile/cm.cm';

到您的application / config / routes.php

或者

$route['(:any)'] = 'user/userprofile/$1';

如果您的参数可能不同。

答案 1 :(得分:1)

您可以使用routes.php,但如果您在cm.cm等user/userprofile/cm.cm

中制定规则
$route['(:any)']= 'user/userprofile/$1';

但这不是一个完美的解决方案,它会将基本网址之后的所有控制器都指向user/userprofile/,你需要指定一些字符串,CI routes将识别这需要指向此控制器如果cm.cm是非硬编码的动态参数,那么你的url结构应该是

universitytwig.com/students/cm.cm

在路线中,您现在可以制定规则

$route['students/(:any)']= 'user/userprofile/$1';

这适用于您的场景