移动重定向

时间:2009-03-04 06:21:58

标签: redirect mobile

我有一个网页,我最近被要求为它创建移动版本,现在我已经完成了我被要求进行自动重定向,以便用户通过PDA / iPhone进入网页/智能手机/等他/她自动被定向到m.website.com但我不知道怎么做= /我已经尝试了一些我发现使用谷歌的PHP和javascripts但到目前为止没有任何帮助我。你们俩好吗?

9 个答案:

答案 0 :(得分:3)

查看WURFL并为与其移动浏览器用户代理字符串列表匹配的用户代理构建302重定向器。

或者,只需在User-Agent中查找iPhone并将其重定向到您的iPhone站点即可。其他浏览器命令这么小的市场份额,几乎不值得瞄准它们。 iPhone占移动网络HTML流量的67%。您可以在网页上的Javascript中执行此操作。

答案 1 :(得分:2)

我已经发布了最新版本的“Apache Mobile Filter”,这个开源项目在前8个月内有来自sourceforge的超过1100次下载,我想CPAN也是如此。

Apache Mobile Filter允许您从任何编程语言访问WURFL,而不仅仅是传统上用于动态移动网站的Java和PHP。

模块检测移动设备并将WURFL功能作为环境变量传递给其他Web应用程序。它还可以用于动态调整图像大小以适应移动设备的屏幕大小。 试一试,让我知道你的意见。

了解更多信息:http://www.idelfuschini.it/it/apache-mobile-filter-v2x.html

答案 2 :(得分:2)

我写了一个名为“ redirection_mobile.js ”的JS脚本来解决这个问题。如果您从移动设备访问网站,它会检测用户代理并重定向到移动版本。

在某些情况下,您想要从移动设备重定向到桌面版本(例如链接“转到主站点”),脚本将处理该问题,一旦您完成会话,您将访问再次移动版。

您可以在github上找到源代码 https://github.com/sebarmeli/JS-Redirection-Mobile-Site ,您可以在我的文章中阅读更多详细信息:< / p>

http://blog.sebarmeli.com/2010/11/02/how-to-redirect-your-site-to-a-mobile-version-through-javascript/

答案 3 :(得分:1)

如果您列出的代码无效,可能会提供更多帮助。

如果你有php,用户代理检测在大多数情况下效果很好。

< ?php
$browser = strpos($_SERVER['HTTP_USER_AGENT'],"iPhone");
if ($browser == true) { header(”Location: http://www.example.com/“); }
}
?>

此外,这看起来像是一个骗子:     Identifying different mobile handsets and redirecting to different websites

答案 4 :(得分:0)

在这里提出并回答了一个非常相似的问题:

How do I determine whether it's a mobile device with PHP?

  

传统的移动设备已经存在   通过比较HTTP检测到   针对列表的User-Agent标头   众所周知的移动UA字符串。一本小说   而不是尝试检测   存在桌面操作系统 - 任何东西   发现它不是桌面操作系统   然后必须是移动的。

     

这导致错误少得多   阳性。

     

我写了一篇包含示例代码的帖子   在Python中:

     

http://notnotmobile.appspot.com

检测设备是否为台式机 - 如果不是,则重定向到您的移动网站!

干杯,

约翰

答案 5 :(得分:0)

完成移动子域设置后,请务必参阅 A List Apart 中的这篇文章,其中介绍了移动设备如何对CSS属性做出反应,media =“掌上电脑”。不幸的是,并非所有人都做出同样的反应。

http://www.alistapart.com/articles/returnofthemobilestylesheet

答案 6 :(得分:0)

“Apache Mobile Filter”是“Apache Module Registry”门户(http://modules.apache.org/search.php?id=1787)的模块之一

答案 7 :(得分:0)

我使用http://detectmobilebrowser.com,发现它是最快捷,最简单的方法。它运作得很好。该站点自动生成服务器脚本(php,perl,python,coldfusion,apache,jquery等),检测移动浏览器并相应地重定向。您只需将代码复制并粘贴到索引文件中的某个位置即可。

答案 8 :(得分:0)

这一点Javascript也可以提供帮助:

<script>
    if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|BB10|IEMobile|Opera Mini/i.test(navigator.userAgent) ) //Specify the mobile devices that you would like this if statement to apply to. 
    {
        image_y = document.getElementById('bodyID'); //Get the ID of the body and assign it to a variable.
        image_y.parentNode.removeChild(image_y); //Remove the body to prevent anything loading on the screen in case there are issues with the window location redirect.
        window.location = "mobile.html"; //Re-assign the window location to a new html page that is caters for the redirect. 
    }
</script>

我把它放在HTML正文的开头。