0

我写

RewriteCond %{HTTP_USER_AGENT} .*MSIE.*
RewriteRule .* /IE [R=403,L]

将所有 ie 用户重定向到文件夹 IE。

然后我尝试了

RewriteCond %{HTTP_USER_AGENT} !.*MSIE.*
RewriteCond %{HTTP_HOST} /IE
RewriteRule .* 404.html [R=404,L]

但它没有用。

我怎样才能让它工作?

4

2 回答 2

1

R 标志只支持 300 到 400 之间的代码,如果要通过 403 Forbidden 错误,请使用 F 标志,如果要通过 404 Not found 错误,只需将用户重定向到不存在的页面。

编辑 :

试试这个 :

RewriteCond %{HTTP_USER_AGENT} !MSIE
RewriteRule ^IE unexistantpage.html [L]

或者,如果您想禁止它:

RewriteCond %{HTTP_USER_AGENT} !MSIE
RewriteRule ^IE - [F,L]
于 2012-08-29T10:33:10.000 回答
0

您使用了错误的 var。%{HTTP_HOST}匹配主机名,而不是文件夹。我想你想要这样的东西:

RewriteCond %{HTTP_USER_AGENT} !.*MSIE.*
RewriteRule ^/?IE /404.html [R=404,L]

请注意,R=404强制 404 响应,它实际上并没有将您重定向到任何地方。

于 2012-08-29T10:37:08.810 回答