【问题标题】:Make a site automatically choose between the WAP or normal version?让网站自动选择 WAP 版还是普通版?
【发布时间】:2009-06-18 10:33:44
【问题描述】:

我有一个网站,根文件夹中有以下文件: 索引.wml index.php

如果您通过非 wap 浏览器访问,我如何让它打开 index.php,但当它是 wap 浏览器时,它会自动打开 index.wml。我怀疑 .htaccess 文件中必须包含某些内容?

【问题讨论】:

    标签: php xml apache wap wml


    【解决方案1】:

    我建议您使用Mobile Device Browser File。它是一个包含大量已知设备功能信息的数据库。尽管它是为在 ASP.NET 应用程序中使用而创建的,但它是一个 XML 文件,因此您也可以从 PHP 中使用它(查看文件schema)。

    我强烈建议您使用功能来决定如何将内容发送到设备,而不是任何简单的“if not desktop and not laptop then send_wap()”。看看list of capabilities included

    【讨论】:

      【解决方案2】:

      看看这个脚本:

      http://tom.anu007.googlepages.com/wapredirect

      让您根据浏览器指定不同的重定向。

      乔什

      【讨论】:

        【解决方案3】:

        您可以在 index.php 中通过用户代理切换和将 wap 浏览器重定向到 index.wml 来完成此操作,但我不知道 wap 浏览器在其用户代理字符串中报告什么。

        【讨论】:

          【解决方案4】:

          如果您只想以不同的格式(WAP 和 PHP)呈现一个页面,请尝试添加“手持式”样式表以重新格式化页面和/或隐藏 WAP 浏览器的元素和 div。

          <link rel="stylesheet" type="text/css" media="handheld" href="wap.css"> 
          

          否则,您将不得不使用重定向脚本,例如 Josh 链接的那个。

          【讨论】:

            【解决方案5】:

            这可以通过 mod_rewrite 来完成。

            RewriteCond %{HTTP_ACCEPT} application/vnd\.wap\.xhtml\+xml [OR]
            RewriteCond %{HTTP_ACCEPT} text/vnd\.wap\.wml
            RewriteRule ^index\.php http://host.com/index.wml [L,QSA,R]
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2021-02-22
              • 2015-10-12
              • 2010-09-22
              • 1970-01-01
              • 2010-11-21
              相关资源
              最近更新 更多