※ ChatGPTを利用し、要約された質問です(原文:携帯で携帯サイトを閲覧すると、なぜかPCサイトが表示されます。)
携帯で携帯サイトを閲覧するとなぜかPCサイトが表示される理由
このQ&Aのポイント
携帯サイトを閲覧する際に、PCサイトが表示される問題が発生しています。
自分の携帯サイトは直接アドレスを入力すると表示されるのに、auのEZwebのサイトから検索して表示させるとPCサイトに飛んでしまいます。
index.phpで携帯へのリダイレクトを行っているが、なぜかindex.htmlが先に読み込まれてしまうため、.htaccessでindex.phpを先に読ませています。
携帯で携帯サイトを閲覧すると、なぜかPCサイトが表示されます。
携帯で携帯サイトを閲覧すると、なぜかPCサイトが表示されます。
お世話なります。素人ですので説明にいたらない点が多々あると思いますが、どうか宜しくお願いします。
タイトルが分かりずらくてすみません。どういったことかといいますと、携帯から直接アドレスをひくと自分の携帯サイトが表示されるのに、auのEZwebのau oneトップから自分の携帯サイトを検索し表示させますと、なぜか、自分のPCサイトに飛んでしまいます。
なぜでしょうか?
以下の記述のindex.phpで同じドメインで携帯へ飛ばしています。
<?php
/////////////////////////////////////////▼初期処理▼
//http://から始まるURLを指定
$docomo = "http://www.abc.com/m/index.html"; //ドコモの場合
$au = "http://www.abc.com/m/index.html"; //auの場合
$softbank = "http://www.abc.com/m/index.html"; //ソフトバンクの場合
$msie = "http://www.abc.com/index.html"; //IEの場合
$Netscape = "http://www.abc.com/index.html"; //Netscapeの場合
$opera = "http://www.abc.com/index.html"; //Operaの場合
$firefox = "http://www.abc.com/index.html"; //Firefoxの場合
$pc = "http://www.abc.com/index.html"; //上記機種以外
/////////////////////////////////////////▲初期処理終端▲
/////////////////////////////////////////▼携帯判別▼
if(isset($_SERVER['HTTP_USER_AGENT'])){
$user_agent = $_SERVER['HTTP_USER_AGENT'];
if(eregi("DoCoMo",$user_agent)){header("Location: $docomo");}
elseif(eregi("UP\.Browser",$user_agent)){header("Location: $au");}
elseif(eregi("J-PHONE",$user_agent)){header("Location: $softbank");}
elseif(eregi("Vodafone",$user_agent)){header("Location: $softbank");}
elseif(eregi("SoftBank",$user_agent)){header("Location: $softbank");}
elseif(eregi("J-EMULATOR",$user_agent)){header("Location: $softbank");}
elseif(eregi("MSIE",$user_agent)){header("Location: $msie");}
elseif(eregi("Netscape",$user_agent)){header("Location: $netscape");}
elseif(eregi("Opera",$user_agent)){header("Location: $opera");}
elseif(eregi("Firefox",$user_agent)){header("Location: $firefox");}
else{header("Location: $pc");}
}else{
print <<<END
<html><body>
HTTP_USER_AGENT Error<br /><br />
ユーザーエージェントが読み込めませんでした。<br />
</body></html>
END;
}
/////////////////////////////////////////▲携帯判別終端▲
?>
あと、なぜかindex.phpよりindex.htmlを先によんでしまうようなので、.htaccessで以下のように記述してindex.phpを先に読ませています。
DirectoryIndex index.php index.html
宜しくお願いします。
お礼
早速試してみまして、スムーズに表示されるようになりました。 ありがとうございました。