我希望我的网站将移动用户从mydomain.com重定向到m.mydomain.com(除非他们特别要求查看非移动网站).
我在使用WURFL的应用程序中执行此操作,但我想启用页面缓存.如果启用了页面缓存,则永远不会知道应用程序是否需要重定向移动用户,因此我需要nginx来执行此操作.
Apache拥有使用WURFL的Apache Mobile Filter等模块.
有没有什么好方法可以在nginx中检测移动浏览器?我不是只想出一个用户代理正则表达式,因为有许多不同的移动用户代理总是在变化.
最佳答案
我不相信有专门的nginx core或third-party模块.由于任何模块都会简单地测试用户代理,我无法想象有人为此特定目的创建模块.
但是,设置对用户代理和重定向的检查应该相对简单.您可能会发现最好明确检查Gecko / IE / webkit / opera并将其他所有内容重定向到您的移动网站 – 这样您就可以维护更小的ua正则表达式,而且还可以满足移动游戏的需求(iPhone / iPod)触摸)将它们保存在您的主网站上.对于该浏览器的特殊情况,它应该是您希望的简单步骤.
此外,您应该能够检查nginx配置中的cookie内容,以决定是否根据用户代理的首选项重定向.