ソフトバンク2Gの停波に伴ってユーザエージェントによるキャリア判定のロジックを書き直してみました
Tweet
3月末にソフトバンクの2G端末がひっそりと停波となりました。
これに合わせてユーザエージェントが「J-PHONE」の端末からのアクセスはなくなることになります。
(一部クローラで使われていることもありますが、おそらくこれもじきになくなるでしょう)
というわけで、それに伴ってユーザエージェント判定のプログラムをPHPで書き直してみました。
// ユーザエージェントの取得
$agent = $_SERVER['HTTP_USER_AGENT'];
// 振り分け処理
if (preg_match('/^Vodafone/', $agent) or preg_match('/^SoftBank/', $agent) or preg_match('/^MOT-/', $agent)) {
// Vodafone, SoftBankの場合
$dir = 'sb/';
} elseif (preg_match('/^DoCoMo/', $agent)) {
// DoCoMoの場合
$dir = 'i/';
} elseif(preg_match('/^KDDI/', $agent)) {
// auの場合
$dir = 'ez/';
} else {
// その他PC等
$dir = '';
}
$url = 'http://example.jp/' . $dir;
header('Location: ' . $url); // 指定ページに移動
exit;
ドコモの場合は「i/」に、auは「ez/」、ソフトバンクは「sb/」に飛ばすサンプルです。
ユーザエージェントが「Vodafone」から始まる端末は、3GC形式の古い端末でまだ生きていますので必要になります。
「MOT-」はモトローラ製の端末にそういうユーザエージェントを出力する変態端末があったのですが、現在使っている人は皆無でしょうから、この条件は事実上無くても良いと思います。
auは昔は「UP.Browser」で判定をかけていたのですが、それらの端末もすでに停波済みですので、「KDDI」でチェックするのが良いでしょう。
関連:
4月 16th, 2010 at 22:07:15
[…] ソフトバンク2Gの停波に伴ってユーザエージェントによるキャリア判定のロジックを書き直してみました | ke-tai.org […]
4月 18th, 2010 at 0:10:28
[…] ソフトバンク2Gの停波に伴ってユーザエージェントによるキャリア判定のロジックを書き直してみました | ke-tai.org […]