【问题标题】:Redirect for iPad, iPhone and Android针对 iPad、iPhone 和 Android 的重定向
【发布时间】:2012-12-20 10:26:07
【问题描述】:

我的网页无法在移动设备和 Apple 设备上正确呈现,我为它们制作了一个替代版本。我怎样才能(最好仅使用 html)让这些设备在访问主要设备时加载备用版本?

【问题讨论】:

    标签: android iphone html ipad redirect


    【解决方案1】:

    如果您有权访问网站的逻辑部分 (php/javascript),则可以实施检查以查看浏览器在其请求中发送的用户代理字符串是否包含“iPhone”、“iPad”或“安卓”。接下来,您可以使用“位置”响应标头重定向到此其他页面。例如:

    JavaScript:

    if( navigator.userAgent.match(/iPhone/i) ) { 
        window.location = "http://address.to.your.mobile.site/";
    } 
    

    PHP:

    if (strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone') !== false) {
        header('Location: http://address.to.your.mobile.site/');
    }
    

    我更喜欢 PHP 解决方案: 浏览器向网络服务器发送请求。网络服务器将看到用户代理是移动设备并重定向到正确的页面。 JavaScript 解决方案将请求网页、接收网页、加载 JavaScript 并向网络服务器发送新请求。 (我相信它是这样发生的,如果我错了,请纠正我)

    另外,正如您在 cmets 中提到的,并非每个用户的浏览器都启用了 JavaScript。

    【讨论】:

    • 虽然这种方法可能有效,但恐怕禁用 javascript 的用户可能会成为问题。因此希望在纯 html 中执行此操作,例如使用链接标签
    • 我已经用可能的 PHP 解决方案详细说明了我的答案。我认为仅使用 HTML 是不可能达到预期效果的。
    • 我刚刚实现了一些更改并且运行良好。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2012-12-04
    • 1970-01-01
    • 1970-01-01
    • 2011-04-09
    • 1970-01-01
    • 2014-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多