CodeIgniter - 从URL中删除"索引"

use*_*094 7 php url routing controller codeigniter

注意:我不是在谈论删除index.php- 我的意思是index- 方法名称.

我当前的网址如下所示:

www.mysite.com/view-topic/index/my-topic
Run Code Online (Sandbox Code Playgroud)

这就是我想要的样子:

wwww.mysite.com/view-topic/my-topic
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

提前致谢!

Mac*_*Mac 12

您可以为此设置路线application/config/routes.php,添加新行:

$route['view-topic/(:any)'] = 'view-topic/index/$1';
Run Code Online (Sandbox Code Playgroud)

这将路由您的URL http://url.com/view-topic/anythinggoeshere将掩盖view-topic/index/anythinggoeshere控制器.

有关路由的更多信息:

  • 上面也将在`view-topic controller`中为`other functions`调用`index function`. (5认同)
  • 这不是一个好的长期解决方案.正如Rohan所提到的,这将匹配view-topic控制器中的所有方法,因此除非此控制器仅使用单个方法,否则将无法扩展. (3认同)