2007年4月12日木曜日

mod_rewriteでリダイレクト。ただし画像は対象から外す

以前、「mod_rewriteを使って特定のIPやホストからの接続の場合のみ、コンテンツを表示する」というのをやりました。
今回その条件に加えて「ただし画像(gif,jpg,png)は処理の対象から外す」というのを付け足しました。
こんな感じです。

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpg|jpeg)$ [NC]
RewriteCond %{REMOTE_ADDR} !^192.168.1.$
RewriteCond %{REMOTE_ADDR} !^172.0.0.1$
RewriteRule .* ___maintenance.html

この設定の場合、飛ばし先が「___maintenance.html」になります。この「___maintenance.html」にて同一サーバー上の画像の呼び出しをしており、画像をリダイレクト対象から外す必要があったので、このような設定になりました。

1 件のコメント:

  1. […] ある人からこのブログをスマホ(iPhone、safari)で見たら、画像が見えないよーと教えてもらう。 え!? かなり昔にiPhone用のサイトを作ってほったらかしていたので、そんなことになっているとは知らなかったが、調べてみると。。。。Orz….. PCでは画像が見えているが、スマホだと画像が見えていない。 iPhone用のサイトを作ったときは見えていたはずだ。 おかしいなあと思って、見えない画像のURLを直接スマホで見ると・・・・リダイレクトされてNot Foundになっていた。なんとなく原因がわかったので、.htaccess を調べてみると。 やはり。.htaccess にて画像(gif,jpg,png)の場合は、リダイレクト処理からはずすという条件が抜けていた。以前は付けていたはずなのに・・・・過去にいろいろと.htaccess をいじっているうちに削除してしまったのかなあ。。。 .htaccess に画像(gif,jpg,png)の場合は、リダイレクト処理からはずすという条件を追加すると、無事スマホでも画像が表示された。ほっとした。 以下、参照。 mod_rewriteでリダイレクト。ただし画像は対象から外す […]

    返信削除