ケータイキャリア毎に振り分けを行うには(mod_rewrite編)
Tweet
先日執筆した「PHPでキャリア毎に振り分けを行うには(ユーザエージェント編)」に続き、
mod_rewriteを使った、携帯電話・PCの振り分け方法をご紹介しようと思います。
前回の方法ですと、PHPが動くサーバでなくてはなりませんでしたが、
今回の方法ですと、「.htaccess」が置けて、「mod_rewrite」さえ動けばよいので、
より多くのサーバで、より簡単に動作させることができると思われます。
設置方法は簡単で、振り分けを行いたいディレクトリの直下に、
「.htaccess」ファイルを置くだけです。
今回の例でも
「http://example.jp/」 にアクセスがあった場合、
- ドコモは 「http://example.jp/i/」 にジャンプ
- auは 「http://example.jp/au/」 にジャンプ
- SoftBankは 「http://example.jp/sb/」 にジャンプ
- それ以外は通常通り「http://example.jp/」を表示
と設定する場合のサンプルを記載します。
・example.jpのWeb公開領域直下に、「.htaccess」という名前で、下記の内容のファイルを設置
<IfModule mod_rewrite.c> RewriteEngine On # SoftBank RewriteCond %{HTTP_USER_AGENT} ^J-PHONE [OR] RewriteCond %{HTTP_USER_AGENT} ^Vodafone [OR] RewriteCond %{HTTP_USER_AGENT} ^MOT- [OR] RewriteCond %{HTTP_USER_AGENT} ^SoftBank RewriteRule ^$ /sb/ [R=302,L] # DoCoMo RewriteCond %{HTTP_USER_AGENT} ^DoCoMo RewriteRule ^$ /i/ [R=302,L] # au(HDML-Only) RewriteCond %{HTTP_USER_AGENT} ^UP.Browser RewriteRule ^$ /au/ [R=302,L] # au(HTML-OK) RewriteCond %{HTTP_USER_AGENT} ^KDDI RewriteRule ^$ /au/ [R=302,L] </IfModule>
関連:
10月 28th, 2007 at 12:46:40
^KDDI => au(XHTML-OK)*WAP2 では?
10月 30th, 2007 at 12:03:58
失礼しました。auのコメントが逆でしたね。
ご指摘非常に助かります。
早速修正させていただきました。
ありがとうございました。