2013-07-09 31 views
0

这是重写规则我现在用我的MVC应用程序:修改的.htaccess重写规则MVC应用程序

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)/([^/]+)(/([^/]+))?$ application/controller/$1.php?method=$2&param=$4 

显示为:www.website.com/controller/method/param

的参数URI是可选的。我如何使方法可选,以便用户可以访问www.website.com/controller?

我还可以另外强制URL有一个尾部斜杠?

回答

2

尝试:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^([^/]+)(?:/([^/]+)|)(?:/([^/]+)|) application/controller/$1.php?method=$2&param=$3 [L] 

(?:/([^/]+)|)是可选的捕捉组,允许一个 “无中生有” 使用|符号。