两个Url重写相互矛盾

时间:2014-02-16 08:00:55

标签: regex apache .htaccess mod-rewrite rewrite

我有两个Url规则

RewriteRule ^/user/strategies$ /user/index.html [NC,L]

RewriteRule ^/user/([a-zA-Z_0-9.]+)$ /user/index.html?username=$1  [NC,L]

你可以看到它们彼此矛盾,解决这个问题的最佳方法是什么。

1 个答案:

答案 0 :(得分:0)

您可以使用以下规则:

RewriteEngine On

RewriteRule ^user/strategies$ /user/index.html [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^user/([a-zA-Z_0-9.]+)$ /user/index.html?username=$1  [NC,L]
  • .htaccess是每个目录指令,Apache从RewriteRule URI模式中剥离当前目录路径(从而导致斜杠)。