1つだけ過去を変えられるとしたら?

htaccessでブラウザ分け(IE6.0だけ別のサイトに移動)をしたいのです。

そこで、


RewriteEngine On

RewriteCond %{HTTP_USER_AGENT}MSIE 6.0
RewriteRule ^$ http://example.com/ie6/ [R]

というhtaccessをつくって、

http://example.com/

にアップしました。


ですが、IE6.0で

http://example.com/

にアクセスしたときは

http://example.com/ie6/

に行ってくれるのですが、

http://example.com/abc.html

にアクセスしたときはまったく移動してくれません。

http://example.com/abc.html

にアクセスした時も

移動させるためにはどうしたらいいのでしょうか!?



P.S.使っているサーバーはデジロックのcoreserverです。

A 回答 (2件)

実際に試しました。


最初何度やってもうまくいかなかったのですが、私のサーバではRewriteBaseを指定しないとうまくいかないということがわかり、以下のようにしたところ動作しました。

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} "MSIE 6.0"
RewriteCond %{REQUEST_URI} "!ie6/"
RewriteRule ^(.*)$ ie6/$1 [R]
    • good
    • 0
この回答へのお礼

ありがとうございます!
luka3さんのおかげで無事目的を達成することができました!
お忙しいところ考えてくださるなんて、本当感謝、感激です!
ありがとうございました!

そして最後にこれをいつか読まれる
皆さんのために書き記しますが、

このluka3さんが書いてくれたhtaccessは

http://example.com/abc.html

http://example.com/ie6/abc.html

に移動してくれる方法でございます☆

lukaさんはじめ、これを見てくださっている皆様に
全ての良きことが起きますよう心よりお祈り申し上げます。

お礼日時:2010/07/14 02:09

実際に試していませんがこれでどうでしょうか。


(RewriteRuleはすぐにわかったのですが、2行目がないとループしてしまいますからね)

RewriteCond %{HTTP_USER_AGENT} MSIE 6.0
RewriteCond %{REQUEST_URI} !^/ie6/
RewriteRule ^(.*)$ http://example.com/ie6 [R]
    • good
    • 0
この回答へのお礼

すばやい解答ありがとうございます!

ためしてみましたが、
「Internal Server Error」

が出てしまいました(泣)

お礼日時:2010/07/13 12:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!