【问题标题】:Where should I put the Mobile detection in .htaccess or php?我应该将移动检测放在 .htaccess 或 php 中的哪个位置?
【发布时间】:2011-12-16 14:01:21
【问题描述】:

我的网站现在有一个移动版本,我想知道我应该在哪里进行重定向。我只能考虑使用以下方法进行重定向:

  • .htaccess
  • PHP

我想知道哪个更好/更有效?除了 .htaccess 或 PHP 之外,还有更好的方法吗?

谢谢

【问题讨论】:

  • apache配置会更好吗?

标签: php .htaccess mobile redirect


【解决方案1】:

我投票给 Apache。

如果您在 Apache 级别执行此操作(在 .htaccess 文件中,或者更好的是在 Apache 配置中),那么如果您有 HTML 文件,我能想到的唯一检测方法是 JavaScript;这可以很容易地删除(比如禁用 JavaScript)。

这也适用于其他类型的文件,如 PDF、Word 文档、MP3 文件等。它可以轻松重定向到包含“不可用于移动设备”消息的页面。

如果它们不同(标准版与移动版),我能想到的另一件事是 css 文件。

【讨论】:

  • 关于 CSS 点:您可以使用具有不同 media 属性标签的多个 CSS 样式表。例如,您可以有一个<link rel="stylesheet" type="text/css" href="normal.css"> 和一个<link rel="stylesheet" type="text/css" media="handheld" href="mobile.css">。有关更多信息,请参阅this link
【解决方案2】:

绝对是 PHP。您应该允许客户端从移动版切换到完整版再返回,这样会涉及到一些 cookie。

最好在www.example.com 上运行完整版,在不同子域m.example.com 上运行移动版

【讨论】:

    【解决方案3】:

    通过在 PHP 中执行此操作,您可以进行一些自动调整以优化移动查看器的相同内容,而不必拥有完全不同的内容副本。 This article on mobile-friendly PHP design 提供了一些细节。您可能不想遵循它提供的所有提示,因为它是从移动数据速度意味着最小图像最好的时代开始的,但它可以为您提供有关可用于进行调整的方法的想法。

    基本上,它相当于创建一个函数,以对您的站点最有意义的方式调整 HTML 输出。然后,您将该函数放入一个文件中,该文件通过 .htaccesss 包含在每个页面中(所以我猜您有点同时使用 PHP 和 .htaccess)。其中一部分是使用ob_start(); 在加载时在页面输出上运行该函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-16
      相关资源
      最近更新 更多