ケータイキャリア毎に振り分けを行うには(mod_rewrite編)
    このエントリをはてなブックマークに登録

先日執筆した「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>

 

関連:


 

最近の記事







2 Responses to “ケータイキャリア毎に振り分けを行うには(mod_rewrite編)”

  1. ^KDDI => au(XHTML-OK)*WAP2 では?

  2. 失礼しました。auのコメントが逆でしたね。
    ご指摘非常に助かります。
    早速修正させていただきました。
    ありがとうございました。

コメントを書く