ブラウザの種類/携帯電話など区別してページをRedirect

はじめに

PCサイトから携帯サイトへ自動的に振り分けたいときがあります。このときmod_rewriteをうまく利用してユーザーエージェントを判断してもよいのですが、ユーザエージェントは簡単にかえられます。このときリモートホストを判断することにより振り分けることができます。

IPアドレスのリモートホストでリダイレクトする方法

.htaccessおよびapacheのコンフィグレションファイルに以下のようなせってすればよい。

 RewriteEngine on
 RewriteCond %{REMOTE_HOST} .*\.docomo.ne.jp$
 RewriteRule ^/*$ http://www.mysite.com/i/ [L]

この記述で設定すると、ホスト名にdocomo.ne.jpを含むアクセスは指定のURLへ転送します。ただしこれもDNS時第で、docomo.ne.jpが必ずDoCoMoとは限らないです。IPを指定した方がより確実です。

ユーザエージェントで指定する方法

以下は上記と同様ですが、今回はユーザエージェントを利用する場合の設定です。

 RewriteEngine on
 RewriteCond %{HTTP_USER_AGENT} "DoCoMo" [NC,OR]
 RewriteCond %{HTTP_USER_AGENT} "J-PHONE" [NC,OR]
 RewriteCond %{HTTP_USER_AGENT} "KDDI" [NC,OR]
 RewriteRule "index\.html http://www.mydomain.com/i/ [L]

上記はディレクトリ以下を指定するときは、/から記述します。

上記のサンプルなどはご利用になっているApacheサーバにはmod_rewriteがインストールされる必要があります。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: Mon, 28 Jun 2004 00:49:42 JST (7248d)