防止将RewriteRule应用于特定网址

时间:2014-02-14 14:40:32

标签: .htaccess mod-rewrite

我遇到了重定向附加了不正确参数的问题。

我已将问题重写行识别为

RewriteRule ^([^/\.]+)/$ index.php?dir=$1 [QSA,L]

使用此行

Redirect 301 /resources/ http://www.example.co.uk/resources.html

重写规则导致http://www.example.co.uk/resources.html?dir=resources

之后

导致页面加载错误。

如何更改重写以排除这个和其他特定网址被破坏?

1 个答案:

答案 0 :(得分:1)

首先,不要混用mod_aliasmod_rewrite规则。请改为使用mod_rewrite规则:

RewriteEngine On

RewriteRule ^(resources)/?$ /$1.html [L,R=301]

RewriteRule ^([^/.]+)/?$ /index.php?dir=$1 [QSA,L]