刺繍.com Weblog

人気のあるエントリー BEST10

 
ブラウザによって振り分け

ブラウザによって固有のユーザエージェントという情報を送ってきます。
このユーザエージェントを使うと各携帯電話やお客様が使っているブラウザがわかったり機種によって表示するページを変えたり出来ます。

cgiで記述すると

$ua = $ENV{“HTTP_USER_AGENT”};
## 携帯電話

if ($ua =~ /(iPhone|iPad|iPod|AdobeAIR|Android|IEMobile)/i) { iPhone }
elsif ($ua =~ /(jig\ browser)/i) { jig browser }
elsif ($ua =~ /DoCoMo\/1\.0/i) { imode }
elsif ($ua =~ /(DoCoMo\/2\.0|FOMA)/i) { FOMA }
elsif ($ua =~ /L\-mode/i) { Lmode }
elsif ($ua =~ /^(SoftBank|Vodafone|J\-PHONE|MOT\-[CV])/i) { SoftBank }
elsif ($ua =~ /ASTEL/i) { Doti }
elsif ($ua =~ /^UP\.Browser/i) { EZweb WAP1.0 }
elsif ($ua =~ /^(KDDI\-|OPWV|MMP)/i) { EZweb WAP2.0 }
elsif ($ua =~ /(WILLCOM|DDIPOCKET)/i) { WILLCOM }
elsif ($ua =~ /(PDXGW|Ginga)/i) { H” }

## PC
elsif ($ua =~ /AOL/i) { AOL }
elsif ($ua =~ /Opera/i) { Opera }
elsif ($ua =~ /Netscape/i) { Netscape }
elsif ($ua =~ /Firefox/i) { Firefox }
elsif ($ua =~ /Safari/i) { Safari }
elsif ($ua =~ /Gecko/i) { Netscape }
elsif ($ua =~ /MSN/i) { MSN Explorer }
elsif ($ua =~ /MSIE/i) { Internet Explorer }
else { その他 }

このようになります。

まず、ユーザエージェントの文字列を $ua に代入しておきます。
iPhone か iPad か iPod か AdobeAIR か Android か IEMobile が含まれていれば iPhone
jig browserが含まれていれば jig browser
DoCoMo/1.0 が含まれていれば imode
DoCoMo/2.0 か FOMA が含まれていれば FOMA
L-mode が含まれていれば Lmode
SoftBank か Vodafone か J-PHONE か MOT-C 又はMOT-V で始まれば SoftBank
ASTEL が含まれていれば Doti
UP.Browser で始まれば EZweb WAP1.0
KDDI- か OPWV か MMP で始まれば EZweb WAP2.0
WILLCOM か DDIPOCKET が含まれていれば WILLCOM
PDXGW か Ginga が含まれていれば H”
AOL が含まれていれば AOL
Opera が含まれていれば Opera
Netscape が含まれていれば Netscape
Firefox が含まれていれば Firefox
Safari が含まれていれば Safari
Gecko が含まれていれば Netscape
MSN が含まれていれば MSN Explorer
MSIE が含まれていれば Internet Explorer
上のどれとも違う場合は その他

という命令です。

参考のため 各社ユーザエージェントについての公表です。
i mode ブラウザによって振り分け EZweb ブラウザによって振り分け yahoo! ブラウザによって振り分け willcom ブラウザによって振り分け

2011.05.12 追記:
スマートフォンとjig browserの記述の順序を少し変えました。
cgiは上から読み込んでいくので先にimodeやKDDIといった文字が出てくると
そちらに飛ばされてしまうからです。

ブラウザによって振り分け

関連する記事:

コメントをどうぞ

To submit your comment, click the image below where it asks you to...
Clickcha - The One-Click Captcha

Spam Protection by WP-SpamFree

Spam protection by WP Captcha-Free