HTTP_USER_AGENTを用いてLモードを判別する方法

このQ&Aのポイント
  • HTTP_USER_AGENTを利用して、DoCoMo、au、J-PHONEの携帯やLモード以外のPCを判別する方法について説明します。
  • Lモードの場合、HTTP_USER_AGENTには「L」の文字列を含みます。
  • 電話関連で判別する他の文字列についても説明します。
回答を見る
  • ベストアンサー

HTTP_USER_AGENTを用いてLモードを判別する方法

HTTP_USER_AGENTを用いて、Lモードを判別したいと考えております。「DoCoMo」の文字列を含む場合にはドコモの携帯、「UP.Browser」や「UPG1」の文字列を含む場合にはauの携帯、「J-PHONE」の文字列を含む場合にはJ-PHONEの携帯といったように判別できるかと思いますが、Lモードの場合にはどのような文字列を含むのでしょうか。恐れ入りますが教えていただけると助かります。よろしくお願いいたします。 それから、「ドコモ、au、Jーphone、Lモード以外は、PCである」と判別させようと考えておりますが、他に判別の必要があるものはございますでしょうか。(特に電話関連で判別の必要があるものがございましたらご指摘いただけませんでしょうか。)どのような文字列を含むかもあわせて教えていただけるとありがたく存じます。何卒よろしくお願いいたします。

  • CGI
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • estea
  • ベストアンサー率44% (39/87)
回答No.2

こっちのほうがわかりやすいかな・・・

参考URL:
http://www.foo.gr.jp/misc/http_user_agent.html
oomiyaji
質問者

お礼

HTTP User-Agentについて詳しく記載されたURLをご紹介いただき、ありがとうございました。早速、お気に入りに追加させていただきました。Lモードのほかにも、知りたかった情報がいろいろ載っており、とても助かります。ありがとうございました。

oomiyaji
質問者

補足

ありがとうございました。大変有益な情報をいただき、心より感謝しております。

その他の回答 (1)

  • estea
  • ベストアンサー率44% (39/87)
回答No.1

以下のURLに乗ってるのでだめ?

参考URL:
http://specters.net/cgipon/labo/c_dist.html

関連するQ&A

  • Lモードが落とす環境変数について教えてください

    携帯電話(i/j/ez)やLモードに対応したコンテンツを作ろうとしているのですが,携帯電話については,HTTP_USER_AGENTやREMOTE_HOSTからキャリアを判別することができるのですが,Lモードについては,どのような環境変数を落とすのかまったくわかりません。 もし,ご存知の方がおられましたら,教えてください。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • ボーダフォンの HTTP_USER_AGENT(ブラウザ名)

    J-PHONEがボーダフォンに変わってまだ日にちもたっていないのですが ボーダフォンのブラウザ名をいちはやく知る必要がでてきました。 いわゆる、J-PHONEでいえば J-PHONE/SH07 等の名前の所です。 どなたか、J-PHONEまたはボーダフォンの携帯開発関係者等 ご存知の方いらっしゃいませんでしょうか? #旧J-PHONEブランドの携帯ですと、今までの名前が継承されるみたいですね。

  • 『Donut Q』 の 『User Agent』

    『User Agent』の所をi-モード携帯用に変えたいので、軽く調べました 仮に、文字列は↓で合ってるでしょうか? DoCoMo/2.0 SH903i(c100;TB;W24H16)

  • 携帯端末認識User-Agentについて

    初心者なのですが、CGIで携帯サイトを作っていますが。 実機がうまく動きません。User-Agentに問題があると考えています。 現在のソースと主な現象を記しますので、適切なものを教えて下さい。お願いします。 #----------# # 端末認識 # #----------# sub useragent { my $ua; #次にi-mode端末かどうかチェック if ($ENV{'HTTP_USER_AGENT'} =~ /^DoCoMo\/\d/) { $ua = 1; #次にJ-Phone端末かどうかチェック } elsif ($ENV{'HTTP_USER_AGENT'} =~ /^J-PHONE\/\d/) { $ua = 2; #EZweb端末かどうかチェック } elsif (($ENV{'HTTP_USER_AGENT'} =~ 'UP.B') && ($ENV{'HTTP_X_UP_SUBNO'} ne "")){ $ua = 3; #その他はPCとする } else { $ua = 0;} #PCブラウザ再判定 if ($ENV{'HTTP_USER_AGENT'} =~ /Mozilla\/|MSIE|Netscape|Opera|Lynx|AOL|Gecko/) {$ua = 0;} return $ua; } 主な現象 AU:ページ表示ごとに、いちいちブラウザメニューからページ更新をしなければならない(AUの特性もありますが) ソフトバンク:携帯版ではなく、PC版が表示されてしまう。 ドコモ :Pは問題ないようだが、SHは会員登録画面のフォームが半分の項目しか表示されず、次のページで残りの半分 は表示されるが、フォームにすべて書き込んで、登録送信をクリックしても、エラーデータ、の表示が出る。

    • 締切済み
    • CGI
  • mod_rewriteで携帯/PCサイト振り分けの記述について

    現在PCサイトを持っていまして、このサイトの携帯版を作りました。 そこでmod_rewriteを使って.htaccessへの記述でお伺いします。 (mod_rewritは借りているサーバーにインストールされています)。 現在のPCサイトは、 http://www○○○.com/です。 携帯サイトは、  DoCoMo:http://www○○○.com/mobaile/i/  Softbank:http://www○○○.com/mobaile/v/  au:  http://www○○○.com/mobaile/ez/ です。 ■携帯振り分けの.htaccessは下記のとおりなのですが、これであっていますか?オプションなども大丈夫でしょうか? RewriteEngine On #DoCoMo端末へのリンク RewriteCond %{HTTP_USER_AGENT} ^DoCoMo RewriteRule ^$ http://www○○○.com/mobile/i/[L] #Vodafone、J-Phone、Softbank端末へのリンク RewriteCond %{HTTP_USER_AGENT} ^vodafone [OR] RewriteCond %{HTTP_USER_AGENT} ^softbank [OR] RewriteCond %{HTTP_USER_AGENT} ^J-PHONE RewriteRule ^$ http://www○○○.com/mobile/v/[L] #KDDI、au端末へのリンク RewriteCond %{HTTP_USER_AGENT} ^KDDI [OR] RewriteCond %{HTTP_USER_AGENT} ^Up.Browser RewriteRule ^$ http://www○○○.com/mobile/ez/[L] ■また、PCでアクセスした場合のRewriteCondの書き方がわかりません。 上記以外の場合はPCサイト:http://www○○○.com/にアクセスするにはどのようにしたらよいのでしょうか? お手数ですがおわかりの方がいましたらよろしくお願いします。

    • 締切済み
    • CGI
  • .htaccessで携帯とPCの振り分け

     .htaccessで携帯サイトとPCサイトの振り分けで困っています。 .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 ^$ /mobile/[R=302,L] # DoCoMo RewriteCond %{HTTP_USER_AGENT} ^DoCoMo RewriteRule ^$ /mobile/[R=302,L] # au(HDML-Only) RewriteCond %{HTTP_USER_AGENT} ^UP.Browser RewriteRule ^$ /mobile/[R=302,L] # au(HTML-OK) RewriteCond %{HTTP_USER_AGENT} ^KDDI RewriteRule ^$ /mobile/[R=302,L] </IfModule>  これで、PCからのアクセスはどのページへも正常なのですが、携帯からのアクセスはhttp://example.comですとちゃんと携帯サイトのindex.htmlへいくのですが、http://example.com/***.htmlで携帯からアクセスするとPCサイトのhttp://example.com/***.htmlへつながってしまいます。この場合、携帯サイトのindex.htmlへ導くためにはどのようにすればよいのでしょうか。  また、欲を言えば、PCサイトのそれぞれのページにアクセスしてきた携帯をindex.htmlではなく、携帯サイトのそれぞれの該当するページへと導くためにはどのようにしたらよいのでしょうか。  まったくの初心者ですが、よろしくお願いいたします。

  • ユーザーエイジェントの置き換え

    ユーザーエイジェントを検索して UP.Browserという文字列があった場合、 ユーザーエイジェントをauという置き換え表示したいと思っています。 具体的には KDDI-KC3R UP.Browser/6.2_7.2.7.1.K.4.310 (GUI) MMP/2.0 ↓ au と表示したいのですが、 Perlで記述する場合以下のように書いて間違えありませんか? 間違いなどありましたご指摘ください。 if($ENV{'HTTP_USER_AGENT'} =~ /UP.Browser/) { $agent=~s/$ENV{'HTTP_USER_AGENT'} /au/g; }

    • ベストアンサー
    • Perl
  • 携帯端末振り分けソースがソフトバンク端末でうまくいかない?

    携帯端末振り分けの以下のソースを利用していますが、ソフトバンクからフリーで配布されている「ウェブコンテンツビューア」というシュミレータを使いテストするとtype1~3いずれもデスクトップと判断されてしまいます。 「ウェブコンテンツビューア」は何か設定が必要なのでしょうか?、それともこれらのソースにはソフトバンク端末に対するソースのミスがあるのでしょうか? #type1 if($ua=~ /DoCoMo/){$user_agent = 'mobile';} elsif($ua=~ /J-PHONE\/2/){$user_agent = 'mobile';} elsif($ua=~ /J-PHONE\/[3-9]/){$user_agent = 'mobile';} elsif($ua=~ /Vodafone/){$user_agent = 'mobile';} elsif($ua=~ /SoftBank/){$user_agent = 'mobile';} elsif($ua=~ /ASTEL/){$user_agent = 'mobile';} elsif(index($ua,"UP.Browser")==0){$user_agent = 'mobile';} elsif(index($ua,"UP.Browser") > 0){$user_agent = 'mobile';} else{$user_agent = 'desktop';}#Mac and PC #type2 if($ua =~ /^(DoCoMo\/1)/i){$user_agent = 'mobile';}#DoCoMo elsif($ua =~ /^(DoCoMo\/2)/i){$user_agent = 'mobile';}#DoCoMo_FOMA elsif($ua =~ /^ASTEL/i){$user_agent = 'mobile';}#ASTEL elsif($ua =~ /^J\-PHONE/i){$user_agent = 'mobile';}#softbank elsif($ua =~ /^Vodafone/i){$user_agent = 'mobile';}#softbank elsif($ua =~ /^SoftBank/i){$user_agent = 'mobile';}#softbank elsif($ua =~ /^KDDI/i){$user_agent = 'mobile';}#au elsif($ua =~ /^UP\.Browser/i){$user_agent = 'mobile';}#au else{$user_agent = 'desktop';}#Mac and PC #type3 if ($ua =~ /DoCoMo|J-PHONE|Vodafone|Softbank|MOT-|L-mode|DDIPOCKET|PDXGW|ASTEL/ ) { $user_agent = 'mobile'; } else{$user_agent = 'desktop';}

    • ベストアンサー
    • Perl
  • docomo,auの地域について

    J-PHONEはJ-PHONE関東甲信やJ-PHONE東北新潟などと地域がはっきり分かれて料金プランなどもかなり違います。 docomoやauもJ-PHONEほどではないけれど、地域差はあります。 ここで質問なのですが、J-PHONEのようにdocomoやauも地域を越えての契約はできるのでしょうか? しいて例を挙げるのならば、福島県民の私はdocomo中央やau関東と契約ができるのでしょうか? そして、サポートサービスも福島県内のdocomo,auショップでできるのでしょうか? また契約ができた場合、機種変更が福島県内のケータイ店でできるのでしょうか?

  • 携帯電話の仕組み教えて

    TU-KAの携帯を持ってるんですが、TU-KAってJ-PHONEの会社のものだとずっと思ってたんです。だから、友達にもJ-PhoneのTU-KA持ってんだと今まで言ってたんです。 TU-KAって言う会社があったんですね・・。恥 以下は自分の想像図。  会社名 <DOCOMO>  DOCOMOの会社の中にAUというシステムがある。iモードが使える。ボーダフォンというシステムもある。 <J-PHONE> J-PHONEの会社の中にtu-kaという携帯の種類がある。どちらもEZWEBが使える。  携帯の会社はこの2つくらいだと思ってました。 どなたか携帯の仕組みの相関図を教えてください。