ホームページに関して。

PC用とMB用のホームページを作ります。そのどちらでも同じURLで対応できる仕組みを教えてもらえますか。
例えば、
http://○○.jp このサイトがPCでクリックした際とMBでクリックした際にサイト表示が違う方法です。
具体的にお願いします。(こちら参照~)などは無しお願いします。ポイントあげません。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/07/21 20:25:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答5件)

id:k6nch6n No.1

回答回数171ベストアンサー獲得回数11

ポイント35pt

基本的にはリクエストの中のUSER_AGENTの値をチェックして、それぞれのページに飛ばしてあげればよいです。

どのプログラミング言語を利用されるのか書かれていませんので、具体的な方法についてはPHPと仮定して回答します(基本的な概念についてはどのプログラム言語でも同様です)。

次のような内容でindex.phpを作成します。携帯用のindex.htmlはmobileディレクトリの下、PC用のindex.htmlはPCディレクトリの下にあると仮定します。

<?php
$i=$_SERVER['HTTP_USER_AGENT'];
if (preg_match("/DoCoMo\//",$i) ||
    preg_match("/UP\.Browser/",$i) ||
    preg_match("/ASTEL\//",$i) ||
    preg_match("/DDIPOCKET;/",$i) ||
    preg_match("/J-PHONE\//",$i) ||
    preg_match("/PDXGW\//",$i)) {
  header("Location: http://www.example.com/mobile/index.html");
} else {
  header("Location: http://www.example.com/pc/index.html");
}
?>

PHPのサーバー変数については下記を参照のこと。

http://us2.php.net/manual/ja/reserved.variables.php

id:kai324 No.2

回答回数1ベストアンサー獲得回数0

ポイント35pt

PCやモバイル端末からサイトにアクセスすると、サイトを見た側がUserAgentという情報を提供します。

その中に含まれる内容からPC or モバイルを判断することでが出来ます。

※UserAgentの取得にはプログラミングの知識が必要です。

PHPでの例:

$useragent = $_SERVER['HTTP_USER_AGENT'] ;

$arr_agent = explode('/', $useragent);

$agentname = $arr_agent[0];

となり、DoCoMoからアクセスがあった場合は$agentnameの中に「DoCoMo」と入ります。

その他のキャリアだとJ-PHONE/Vodafone/UP.Browser/等が入ります。詳しくは以下をご覧下さい。

Vodafone:

http://developers.vodafone.jp/dp/tool_dl/web/useragent.php

DoCoMo:

http://www.nttdocomo.co.jp/english/p_s/i/spec/useragent.html

AU:

http://www.au.kddi.com/ezfactory/tec/spec/4_4.html

つまり、この$agentnameに入った文字列で表示させるアドレスを

振り分ければよいわけです。

振り分けの例:

$jumpurl = "/mobile/index.html";

if($agentname=='DoCoMo'){

header("Location: $jumpurl");

exit;

}

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 ratbeta 132 124 9 2006-07-14 21:26:43
2 yoanium 22 20 0 2006-07-14 21:57:05
3 shun262 95 77 3 2006-07-14 22:00:23

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

  • MB How is hot coffee? 2006-07-14 21:42:18
    http://q.hatena.ne.jp/1152876252 MBでクリックした際に 通常はメガバイト(Mega Bytes)の意味だと思うけど。 メガバイトでクリックした際に? MBってモバイルの事を指してるつもりだと思うけど
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません