我写
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]
但它没有用。
我怎样才能让它工作?
我写
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]
但它没有用。
我怎样才能让它工作?
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]
您使用了错误的 var。%{HTTP_HOST}
匹配主机名,而不是文件夹。我想你想要这样的东西:
RewriteCond %{HTTP_USER_AGENT} !.*MSIE.*
RewriteRule ^/?IE /404.html [R=404,L]
请注意,R=404
强制 404 响应,它实际上并没有将您重定向到任何地方。