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

間違った変数を使用しています。%{HTTP_HOST}フォルダではなく、ホスト名と一致します。私はあなたがこのようなものが欲しいと思います:

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

強制的に404応答が返されることに注意してくださいR=404。実際には、どこにもリダイレクトされません。

于 2012-08-29T10:37:08.810 に答える