【问题标题】:Is there a way to have a full site button on a mobile app without javascript?有没有办法在没有 javascript 的移动应用程序上拥有一个完整的网站按钮?
【发布时间】:2015-01-03 22:27:24
【问题描述】:

我目前通过 htaccess 重定向到移动网站,如下所示:

RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos" [NC]
RewriteRule ^$ http://m.example.com/ [L,R=302]

有没有办法在我的移动版本上有一个完整的网站按钮,如果点击它会忽略此规则?我不想使用 javascript 来进行重定向并检查整个站点...我对 php 这样做的想法没有意见,但我知道 htaccess 在 php 规则之前被淘汰了。

【问题讨论】:

    标签: javascript php .htaccess redirect mobile


    【解决方案1】:

    您可以使用此 URL 创建按钮/href 链接:

    <a href="/?desktop=1">Full Desktop Site</a>
    

    然后将您的重写更改为:

    RewriteEngine On
    
    RewriteCond %{QUERY_STRING} !(^|&)desktop=1(&|$) [NC]
    RewriteCond %{HTTP_USER_AGENT} "android|blackberry|googlebot-mobile|iemobile|ipad|iphone|ipod|opera mobile|palmos|webos" [NC]
    RewriteRule ^$ http://m.example.com/ [L,R=302]
    

    【讨论】:

    • 您知道使用这种方法的任何其他方法吗?或者这是常用的做法?
    • 这是当今许多网站上最常见的做法。他们中的一些人也使用锚点,比如domain.com/#desktop,但想法是一样的。
    • 好的,谢谢。我认为您在使用虚拟主机和移动设备重定向方面帮助了我的利弊……他们仍然很遗憾地想使用重定向。我希望我有具体的证据说明它为什么不好。
    • 锚定替代品会是什么样子?肯定不是QUERY_STRING吧?
    • 锚点的问题是 mod_rewrite 不起作用,您需要在 Javascript 本身中处理这个问题,因为 # 之后的部分不会到达 Web 服务器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-08
    • 1970-01-01
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多