繁体   English   中英

Codeigniter URL重新映射以删除段

[英]Codeigniter URL remapping to remove segment

我有一个codeigniter网站,请求网址采用以下形式:

example.com/segment1/segment2/segment3 where:

segment 1 is a folder name
segment 2 is a controller name
segment 3 is a function name

我想将这些请求重新映射为:

example.com/segment2/segment3

我已经在my * routes.php *配置中尝试过此操作:

$route['(:any)/(:any)/(:any)'] = "$2/$3/$1";

浏览器地址栏中显示的要求不变:

example.com/segment1/segment2/segment3

我怎样才能解决这个问题?

您可以将其添加到您的.htaccess文件中(正如您提到的,文件夹是静态的):

RewriteRule ^(.*)?/(.*)?$   your-folder-here/$1/$2   [L,NC]                                                 

这将起作用,但是它将覆盖所有可能的URL。

$route['(:any)/(:any)'] = 'controller_name/$1/$2';

为了使其他控制器正常工作,您必须在上述语句之前进行定义

$route['other_controller_1/(:any)'] = 'other_controller_1/$1';
$route['other_controller_2/(:any)'] = 'other_controller_2/$1';

URI路由:Codeigniter用户指南

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM