解決済みの質問
PCサイトと携帯サイトを運営しています。原則として携帯からのアクセスを(トップ...
PCサイトと携帯サイトを運営しています。原則として携帯からのアクセスを(トップページだけでなく)全て携帯サイトへ振り分ける良い方法を教えてください。ディレクトリ構造/名前は一部を除きPC用サイトと同じです
★PCサイト
http://●●●.com
★携帯サイト
http://mobile.●●●.com
上記のように、2つのサイトがあり携帯電話からのアクセスを携帯サイトに振り分けたいと思っています。
htaccessを利用して、トップページへのアクセスのみ携帯サイトに転送することはできましたが、トップページ以外のページに直接携帯電話からアクセスがあった場合も対応する携帯サイトのページに(http://●●●.com/directory/)に転送したいのです。
(例:対応する携帯用ページへ転送)
★PCサイト
http://●●●.com/directory1/file1.php
↓携帯電話からのアクセスを以下に振り分ける
★携帯サイト
http://mobile.●●●.com/directory1/file1.php
なお、基本的にディレクトリ構造はPC/携帯でまったく同じにしていますが、一部PCサイトにあって携帯サイトにないページが存在しています。そのページだけはPCページを直接閲覧させるようにしたいと思っています。
(例:対応する携帯用ページがない場合)
★PCサイト
http://●●●.com/directory2/file1.php
↓携帯電話からのアクセスを振り分けない
★PCサイト
http://●●●.com/directory2/file1.php
その他、実現にあたりアドバイスなどございましたら教えてください。
よろしくお願いいたします。
- 補足
- kizou0さん
ありがとうございます!
何とか振り分けることができました。
ただ、URLが[http://●●●.com/directory/file.php]などの場合は転送されるのですが、[http://●●●.com/directory/]のように、[/]で終わる場合はうまく転送されません。
ほかの記述が必要なのでしょうか?
-
- 質問日時:
- 2009/10/21 17:26:59
-
- 解決日時:
- 2009/11/5 08:49:22
-
- 回答数:
- 1
-
- 閲覧数:
- 488
-
- ソーシャルブックマークへ投稿:
- Yahoo!ブックマークへ投稿
- はてなブックマークへ投稿
- (ソーシャルブックマークとは)
ベストアンサーに選ばれた回答
kizou0さん
携帯ページが存在している場合のPC側のphpファイル上部に、
------------------------------------------------------
$mobi = 'http://mobile.ドメイン.com'.$_SERVER["PHP_SELF"];
$agent = $_SERVER["HTTP_USER_AGENT"];
switch(1){
case (preg_match("/^(DoCoMo\/1|DoCoMo\/2)\.0/i", $agent)): $UA = 'docomo';break;
case (preg_match("/^(Softbank|J\-PHONE|Vodafone|MOT\-[CV]|Vemulator)/i", $agent)): $UA = 'softbank';break;
case (preg_match("/(UP\.Browser|KDDI\-)/i", $agent)): $UA = 'au';break;
case (preg_match("/iPhone/i", $agent)) : $UA = 'iphone';break;
case (preg_match("/iPod/i", $agent)) : $UA = 'ipod';break;
case (preg_match("/(DDIPOCKET|WILLCOM)/i", $agent)) : $UA = 'willcom';break;
case (preg_match("/(PlayStation Portable)/i", $agent)) : $UA = 'psp';break;
case (preg_match("/(Nitro)/i", $agent)) : $UA = 'ds';break;
default : $UA = '';
}
if(!empty($UA)){
header ("Location:$mobi");
}
----------------------------------------------------
と差し込めば大丈夫だと思います。
もし各キャリア別にサイトを振り分けるようなら、最後のif文で切り替えてください。
■追記
>>ただ、URLが[http://●●●.com/directory/file.php]などの場合は転送されるのですが、[http://●●●.com/directory/]のように、[/]で終わる場合はうまく転送されません。
そのディレクトリにアクセスした場合に読み込まれるファイルに上記コードは入っていますか?
※読み込まれるファイルがhtmlならphpに変えて上記コードを埋め込んでください。
- 違反報告
- 編集日時:2009/10/23 20:55:32
- 回答日時:2009/10/21 21:42:43
この質問は投票によってベストアンサーが選ばれました!
- この質問・回答は役に立ちましたか?
- 役に立った!
お役立ち度:
0人が役に立つと評価しています。

