请帮助我想在我的CodeIgniter网站中使用第一个URI段。Codeigniter _remap函数
就像当我打开这些网址打开他们我的个人资料: http://www.facebook.com/buddyforever 或 http://www.myspace.com/zarpio
我怎样才能做到这一点使用CodeIgniter?我检查了_remap
函数,但是先来控制器如何隐藏控制器?
请帮助我想在我的CodeIgniter网站中使用第一个URI段。Codeigniter _remap函数
就像当我打开这些网址打开他们我的个人资料: http://www.facebook.com/buddyforever 或 http://www.myspace.com/zarpio
我怎样才能做到这一点使用CodeIgniter?我检查了_remap
函数,但是先来控制器如何隐藏控制器?
如果你希望你的网址为http://www.mydomain.com/zarpio
,你想它来指your_controller
,然后执行以下操作,您可以使用笨的URL路由...
做到这一点。
/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_controller
到users
。
如果要访问用户的个人资料,你可以做这样的...
$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/(.*)
之前在路由配置中写入users/profile/(.*)
。
请你能给我完整的教程吗? – zarpio 2010-09-01 13:25:18
谢谢ShiVik我做到了。你是天才 – zarpio 2010-09-01 13:33:06
@ShiVik你能解决我的另一个问题吗?我正在使用$ route ['(。*)'] =“your_controller/$ 1”;到我的routes.php现在的问题是,当我转到www.mydomain.com/myanothercontroller/method ... 404页面未找到...是否还有什么要做的config/routes.php文件? – zarpio 2010-09-05 14:45:27
对不起,我错过键入_remap。 – zarpio 2010-09-01 02:47:38