PCと携帯サイトの振分け後の表示アドレスについて
こんにちは。
私はPHPを利用して、同じアドレス(http://****.com)から携帯とPCを判別して区別しています。
しかし、PCからアクセスした場合は、表示が(http://****.com)となるのですが、携帯からアクセスすると(http://****.com/mobile)のようになってしまいます。
携帯からアクセスした場合でも(http://****.com)と表示させたいのですが、どのようにすればよいのでしょうか。
以前、質問した時は、一つのPHPファイルにPCと携帯二つ分の内容を書いて、どちらかを吐き出す処理を行えばよいとアドバイスをいただきましたが、私の携帯サイトはオリジナルで作成したものではなく、起業からレンタルしているものなのです。
(http://****.com/mobile)というアドレスが与えられるだけのものです。
ですから、自分のオリジナルPCサイトの内容に取り込む事が出来ません。
以下は私の振分けのやり方です。
http://blogn.hustle-user.com/e66.html
こちらのサイトを参考にPHPで作成しています。
index.php(http://****.com/でまずここにアクセスします。)
<?php
$title="http://****.com/mobile";
$page_e='http://****.com/mobile';
$page_j='http://****.com/mobile';
$page_i='http://****.com/mobile';
(↑これら携帯のアドレスにリダイレクトさせてアドレス表示を(http://****.com)にしたいのです。)
$i=$_SERVER['HTTP_USER_AGENT'];
$pc='http://****.com/index.html';
(↑PCはこれで上手く(http://****.com)と表示されています。)
require_once('data/furiwake.txt');
?>
furiwake.txt(上記のリンク先です)
<?php
//HDML記述のezweb端末?
if (preg_match("/UP\.Browser\/[3-5]/",$i)) {
header('Content-Type: text/x-hdml;charset=shift_jis');
echo('<hdml version="3.0" markable="TRUE" public="TRUE">');
echo('<nodisplay markable="TRUE" public="TRUE" title="'.$title.'">');
echo('<action type="ACCEPT" task="GO" dest="'.$page_e.'">');
echo('</nodisplay>');
echo('</hdml>');
exit();
}
//SoftBank以前の端末?
if (preg_match("/J-PHONE\//",$i)) {
header("Location: $page_j");
exit();
}
//iモード/EZウェブ次世代機/エアーH"フォンなどの携帯端末一般。
if (preg_match("/DoCoMo\//",$i) ||
preg_match("/Opera[s\/]/",$i)
&& !(preg_match("/(Win|Mac|Linux|FreeBSD|OS/2|Solaris)/i",$i)) ||
preg_match("/UP.Browser/",$i) ||
preg_match("/^Vodafone/",$i) ||
preg_match("/^SoftBank/",$i) ||
preg_match("/^MOT-/",$i) ||
preg_match("/DDIPOCKET;/",$i) ||
preg_match("/WILLCOM;/",$i) ||
preg_match("/L-mode\/\//",$i)) {
header("Location: $page_i");
exit();
}
else
{
require_once($pc);
exit();
}
?>
どなたかPHPに詳しい方、恐れ入りますが回答お願いします。
お礼
確かにそうですね。 一度正規の方法でこのページに行っていると、 ブラウザを再起動するまではURL直打ちでいけるので 見落としていました。 どうもありがとうございます。