我目前正在使用以下优秀的移动检测脚本:detectmobilebrowsers.mobi
这非常有效,但它会将主站点上的每个页面(包括任何查询参数)重定向到您的移动网站的主页。
我需要的是:
http://www.mydomain.com/page.php?var1=X&var2=Y
指向:
http://mobile.mydomain.com/page.php?var1=X&var2=Y
我有多个页面应该将查询字符串重定向到他们的移动版本。
最好的方法是什么?我以为我应该:
检查页面和查询字符串的$ _SERVER ['HTTP_REFERER'],使用开关/案例循环遍历我需要在主站点和移动站点上匹配的10个页面然后更改移动设备中的引用URL检测脚本。
这有意义吗?
我一直在努力获取页面和查询...欢迎任何建议和想法。
答案 0 :(得分:3)
if ($mobile_is_detected) {
header('Location: http://mobile.mydomain.com' . $_SERVER['REQUEST_URI']);
exit;
}
答案 1 :(得分:2)
除了Andy的回答,重定向时应将响应状态设置为301。
请注意,如果您在调用该函数之前打印了任何HTML或header()
任何内容,则可能无法调用echo
。
if ($mobile_is_detected) {
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://mobile.mydomain.com' . $_SERVER['REQUEST_URI']);
}
答案 2 :(得分:0)
您可以使用$_SERVER['QUERY_STRING']
重定向,首先将查询字符串添加到重定向网址。