ホーム   »  スポンサー広告  »  スポンサーサイト  »  Linux   »  Apache  »  スマートフォンとフィーチャーフォン、PCを適切なページへ振り分ける

スポンサーサイト

広告
  
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


Yahoo!ブックマーク Googleブックマーク はてなブックマーク livedoorClip del.icio.us newsing FC2 Technorati ニフティクリップ iza Choix Flog Buzzurl 
ランキングはこちらをクリック!
▲ Page Top     

スマートフォンとフィーチャーフォン、PCを適切なページへ振り分ける

広告
  

Apacheでスマートフォンとフィーチャー・フォンン、PCを適切なページへ振り分ける


Apacheで下記の振り分け動作仕様を実現する
振り分け動作仕様

・スマートフォン用に最適されたディレクトリを[/smart/]とする。
・ユーザエージェントでフィーチャー・フォン、スマートフォンを識別する。
※ユーザエージェントの値は大文字小文字の差異を無視させます。
・フィーチャー・フォン、スマートフォン以外はPCとする。
・[/healthchk]ディレクトリはリダイレクト対象外とする。
・スマートフォンである場合は、[/smart/index.html]へリダイレクトする。
・スマートフォン以外の[/smart/]へのアクセスはすべてTOP画面へリダイレクトする。
・フィーチャー・フォンをモバイルサイトへリダイレクトする。


※[/healthchk]はヘルスチェック用ディレクトであるため除外する。


上記振り分ける方法として、2つの方法を記述します。



「HTTP_USER_AGENT」を使った振り分け【振り分け方法1】

ユーザエージェント情報を「HTTP_USER_AGENT」から取得して識別する。
下記の方法は、他のサイトでも紹介されている方法です。

RewriteEngine On
#スマフォを最適ページへリダイレクトする。
RewriteCond %{REQUEST_URI} !/smart/.*$
RewriteCond %{REQUEST_URI} !/healthchk/.*$
RewriteCond %{HTTP_USER_AGENT} iPod [NC,OR]
RewriteCond %{HTTP_USER_AGENT} iPad [NC,OR]
RewriteCond %{HTTP_USER_AGENT} iPhone [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Android [NC]
RewriteRule ^.*$ /smart/index.html [R,L]

#スマートフォン以外の[/smart/]へのアクセスはすべてTOP画面へリダイレクトする。
RewriteCond %{REQUEST_URI} !/healthchk/.*$
RewriteCond %{HTTP_USER_AGENT} !iPod [NC]
RewriteCond %{HTTP_USER_AGENT} !iPad [NC]
RewriteCond %{HTTP_USER_AGENT} !iPhone [NC]
RewriteCond %{HTTP_USER_AGENT} !Android [NC]
RewriteRule ^/smart/.*$ /index.html [R]

#フィーチャーフォンをのモバイルサイトへリダイレクトする
RewriteCond %{REQUEST_URI} !^/healthchk/.*
RewriteCond %{HTTP_USER_AGENT} !iPod [NC]
RewriteCond %{HTTP_USER_AGENT} !iPad [NC]
RewriteCond %{HTTP_USER_AGENT} !iPhone [NC]
RewriteCond %{HTTP_USER_AGENT} !Android [NC]
RewriteCond %{HTTP_USER_AGENT} DoCoMo [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Vodafone [NC,OR]
RewriteCond %{HTTP_USER_AGENT} KDDI [NC,OR]
RewriteCond %{HTTP_USER_AGENT} J-PHONE [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Up.Browser [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ASTEL [NC,OR]
RewriteCond %{HTTP_USER_AGENT} EZweb [NC,OR]
RewriteCond %{HTTP_USER_AGENT} DDIPOCKET [NC,OR]
RewriteCond %{HTTP_USER_AGENT} SoftBank [NC]
RewriteRule ^.*$ http://m.hogehoge.hoge/ [R,L]




「BrowserMatchNoCase」を使った振り分け【振り分け方法2】

ユーザエージェント情報を「BrowserMatchNoCase」から取得して識別する。
下記の振り分け方法は、ちょっと面白いと思ったのでここで紹介することにしました。
※Redhatのサポートの方に教えていただきました。

RewriteEngine On
#ユーザエージェントによるスマートフォンの定義
BrowserMatchNoCase iphone is_smart_phone=yes
BrowserMatchNoCase iPod is_smart_phone=yes
BrowserMatchNoCase iPad is_smart_phone=yes
BrowserMatchNoCase Android is_smart_phone=yes

#ユーザエージェントによるフィーチャーフォンの定義
BrowserMatchNoCase SoftBank is_cell_phone=yes
BrowserMatchNoCase DoCoMo is_cell_phone=yes
BrowserMatchNoCase Vodafone is_cell_phone=yes
BrowserMatchNoCase KDDI is_cell_phone=yes
BrowserMatchNoCase J-PHONE is_cell_phone=yes
BrowserMatchNoCase Up.Browser is_cell_phone=yes
BrowserMatchNoCase ASTEL is_cell_phone=yes
BrowserMatchNoCase EZweb is_cell_phone=yes
BrowserMatchNoCase DDIPOCKET is_cell_phone=yes

#スマフォを最適ページへリダイレクトする。
RewriteCond %{REQUEST_URI} !/smart/.*$
RewriteCond %{REQUEST_URI} !/healthchk/.*$
RewriteCond %{ENV:is_smart_phone} yes
RewriteRule ^.*$ /smart/index.html [R,L]

#スマートフォン以外の[/smart/]へのアクセスはすべてTOP画面へリダイレクトする。
RewriteCond %{REQUEST_URI} !/healthchk/.*$
RewriteCond %{ENV:is_smart_phone} !yes
RewriteRule ^/smart/.*$ /index.html [R,L]


#フィーチャーフォンをモバイルサイトへリダイレクトする
RewriteCond %{REQUEST_URI} !/healthchk/.*$
RewriteCond %{ENV:is_cell_phone} yes
RewriteCond %{ENV:is_smart_phone} !yes
RewriteRule ^.*$ http://m.hogehoge.hoge/ [R=301,L]



書籍をお探しの方は、Apacheに関する書籍へどうぞ。


関連記事
スポンサーサイト


Yahoo!ブックマーク Googleブックマーク はてなブックマーク livedoorClip del.icio.us newsing FC2 Technorati ニフティクリップ iza Choix Flog Buzzurl 
ランキングはこちらをクリック!
▲ Page Top     

Comment
Trackback
Trackback URL
Comment Form
管理者にだけ表示を許可する
サイト紹介

仕事で遭遇したトラブル対応をまとめたサイト。インフラエンジニア、サーバエンジニアとしてスキルアップするための情報(IT講座、Linux、Postfix、PostgreSQL、MySQL、Apache、Java、セキュリティ対策、おすすめ書籍)提供します。
全記事表示リンク
カテゴリ
スポンサーリンク

サーバエンジニアのための書籍
プロフィール

hotally

Author:hotally
仕事:インフラエンジニア
取得資格:第2種基本情報処理
     情報セキュリティスペシャリスト
     ネットワークスペシャリスト
     PostgreSQLCE シルバー

アクセスランキング
[ジャンルランキング]
コンピュータ
618位
アクセスランキングを見る>>

[サブジャンルランキング]
Webサービス
27位
アクセスランキングを見る>>
ブログ
最新記事
カテゴリークラウド
スポンサーリンク


RSSリンクの表示
リンク
ブロとも申請フォーム
QRコード
QR
Lc.ツリータグリスト
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。