CI:子文件夹中的控制器 - 从网址中删除子文件夹

时间:2011-06-21 04:58:01

标签: codeigniter

我想将控制器,视图和模型分组到public/members/子文件夹中。

但对于公共内容,我不希望/ public /显示在URL中,所以:

http://mysite.com/& http://mysite.com/section/

应该指向:/ public / home&公共/部分/

我应该如何更改routes.php以适应这种情况?


(我对成员/在网址中有成员/的东西很好)

3 个答案:

答案 0 :(得分:2)

要使http://mysite.com/指向/public/home,您需要将public/home标记为默认控制器。您还需要添加特定路线,以使http://mysite.com/section指向/public/section。试试这个(我认为正则表达式有点可疑,但可能会做你想要的):

$route['default_controller'] = "public/home";
$route['section/(.*?)'] = "public/section/$1";

答案 1 :(得分:0)

请看看这是否适合您:

$route['section'] = "public/section";

您的索引页将保留为“public / index.php”

答案 2 :(得分:0)

您无需为每个控制器添加路由。

这对我有用:

$route['members'] = 'members'; // route members to members
$route['members/(.*?)'] = 'members/$1'; // route members/... to members/...
$route['(.*?)'] = 'public/$1'; // route anything but above lines to public/...

前两行是故意多余的,以保护“成员”部分不被路由到“公共”。第三行就是神奇的。