我有user.php文件,我使用URL Rewrite传递两个参数
但我无法使用此规则,因为无论哪个规则首先执行只执行而不是第二个规则我的规则userID
规则不起作用但适用于webName
。任何解决方案对我都非常有帮助。谢谢你
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^user/(.*)$ user.php?webName=$1 [L,QSA]
RewriteRule ^user/(.*)$ user.php?userID=$1 [L,QSA]
答案 0 :(得分:2)
在两个regural表达之间做出改变:
如果您想捕获用户ID,则应仅过滤数字:\d
然后,如果url中有另一个字符,不仅仅是数字,你可以匹配除kslash之外的任何字符:[^/]
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^user/(\d+)$ user.php?userID=$1 [L,QSA]
RewriteRule ^user/([^/]+)$ user.php?webName=$1 [L,QSA]