mobile - 设置 nginx 以重定向移动用户

标签 mobile nginx

我希望我的网站将移动用户从 mydomain.com 重定向到 m.mydomain.com(除非他们特别要求查看非移动网站)。

我在我的应用程序中使用 WURFL 执行此操作,但我想启用页面缓存。如果页面缓存打开,应用程序将永远无法知道重定向移动用户,因此我需要 nginx 来执行此操作。

Apache 具有使用 WURFL 的模块,例如 Apache Mobile Filter。

有什么好的方法可以在 nginx 中检测移动浏览器吗?我宁愿不只是想出一个用户代理正则表达式,因为有很多不同的移动用户代理总是在变化。

最佳答案

我不相信有专门的 nginx corethird-party为此的模块。因为任何模块都会简单地测试 user-agent无论如何,我无法想象有人会为此特定目的创建模块。

但是,对 user-agent 进行检查应该相对简单。并重定向。您可能会发现最好明确检查 Gecko/IE/webkit/opera 并将其他所有内容重定向到您的移动站点 - 这样您就可以维护一个较小的 ua 正则表达式,而且您可以满足移动 safari(iPhone/iPod触摸)通过将它们保留在您的主要网站上。如果您愿意,它是该浏览器特殊情况的一个简单步骤。

此外,您应该能够检查 nginx 配置中的 cookie 内容,以根据用户代理的偏好决定是否重定向。

关于mobile - 设置 nginx 以重定向移动用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2164733/

相关文章:

iphone - 在移动 Safari 中设置文本框焦点

css - CSS梯度在手机上重复

django - Nginx 子域重定向太多

html - 如何以交替样式对齐图像和文本

css - 任何人都知道用 *[class] 标记类的目的是什么

HTML - HTML 的 "CSS Media Query"行为?

linux - 如何处理 Varnish 堆栈中的 Cookie

nginx - EKS中的UDP负载平衡替代

禁止所有文件使用 Nginx 403

服务器上的 SSL/TLS 配置