php – codeigniter默认控制器URL路由
作者:互联网
我正在组建一个简单的网站,并希望网址与facebook类似,所以输入domain.com/username我会得到一个用户个人资料.我已经可以这样做了
登录用户个人资料
domain.com/
其他用户个人资料
domain.com/home/username
默认控制器称为home,我目前正在使用_remap函数来检查额外的url参数,以根据传递的内容或不传递的内容显示不同的数据.
我的问题是如何将其映射出来以便我可以通过以下方式访问用户配置文件:
domain.com/username
我可以使用routes.php设置吗? htaccess的?
解决方法:
您应该在config / routes.php中添加以下规则
// Profile Route
$route['(:any)'] = 'home/$1';
这会将您的所有请求重新路由到家庭控制器.
所以domain / michelle将被重新路由为域名/ home / michelle
但在这种情况下,您的所有请求都将被重新路由到家庭控制器
例如. domain / pages / about也将被重新路由到域/ home / pages / about wich false.
domain/michelle => domain/home/michelle // TRUE
domain/pages/about => domain/home/pages/about // FALSE
所以你必须在Profile Profile之前为每个请求添加一个identic规则,
例如. $route [‘pages /(:any)’] =’pages / $1′;
把它们放在一起:
// Page Route
$route['pages/(:any)'] = 'pages/$1'
// Last Profile Route
$route['(:any)'] = 'home/$1';
标签:php,codeigniter,url-routing 来源: https://codeday.me/bug/20191007/1863697.html