为多个控制器创建短url


Creating short url for multiple controller?

对于我目前的项目在codeignitor我需要使用户配置文件像这样

http://domain.com/userid

然后我尝试在router.php

中添加这个
$route['(:any)'] = 'profile/user/$1';

工作正常。现在我要为语言创建另一个URL

http://domain.com/es
http://domain.com/fr

对于两个url uri段都在前面,当我输入

 http://domain.com/es

我看到

那一页
 http://domain.com/userid

我使用。htaccess文件在codeignitor中删除index.php。是否有任何帮助,我如何才能实现这个任务在拍摄多个控制器url。是使用。htaccess还是路由器。php?

因为路由系统是自上而下工作的,所以如果你有多个可以匹配url的规则,它会选择第一个。你可以输入:

$route['(es|fr|en)'] = 'language/$1';
$route['(:any)'] = 'profile/user/$1';

如果第一个规则匹配,则运行,否则测试概要文件规则。
您肯定会继续遇到配置文件规则的问题,如果您这样做会更容易:

$route['users/(:any)'] = 'profile/user/$1';
这样可以更清楚地了解url在做什么,并且在您将来编写规则时它将对您有所帮助。