3

请帮助我想在我的 CodeIgniter 网站中使用第一个 URI 段。

就像当我打开这些网址时,他们会打开我的个人资料:http: //www.facebook.com/buddyforeverhttp://www.myspace.com/zarpio

如何使用 CodeIgniter 做到这一点?我检查了_remap功能,但第一个控制器如何隐藏控制器?

4

1 回答 1

9

您可以使用 codeigniter 的 URL 路由来执行此操作...

如果您希望您的 URL 是http://www.mydomain.com/zarpio并且您希望它引用your_controller,请执行以下操作。

/config/routes.php

$route['(.*)'] = "your_controller/$1"; // Now, `zarpio` will be passed to `your_controller`

您可以像这样在控制器中访问它...

$my_name = $this->uri->rsegment(2);

但是我不建议使用这种配置 URL 的方式。更好的方法是...

$route['users/(.*)'] = "your_controller/$1";

这样,您只需将控制器名称重命名your_controllerusers.

如果你想访问用户的个人资料,你可以这样做......

$route['users/profile/(.*)'] = "another_controller/method/$1";
$route['users/(.*)'] = "your_controller/$1";

考虑路由的顺序。由于您users/(.*)在路由中写入,它将匹配users/zarpio以及users/profile/zarpio,并将它们都路由到your_controller/$1,在配置文件的情况下会给您一个404 page not found错误。这就是为什么您需要在路由配置users/profile/(.*)之前编写。users/(.*)

codeigniter URI 类文档中的更多信息

于 2010-09-01T04:34:08.023 回答