2012-04-12 34 views
1

我有一个基于PHP的Web应用程序,希望能够为移动用户提供通过专用的“移动友好”页面查看我的网站内容的选项。移动网站的网址结构与桌面版网站不同。用于桌面和移动站点的CDN缓存

这个想法是,第一次移动用户访问索引页面,正则表达式检查用户代理,如果他们是移动设备,他们可以选择查看该站点的桌面版本或移动版本。

问题是我用我的CDN提供程序(Cotendo)缓存静态HTML。这意味着,当缓存填充时,移动用户很可能会看到缓存版本的桌面站点并绕过移动/桌面选项页面。这也意味着,使用空的缓存,移动用户可以强制CDN存储移动/桌面选项页面的缓存版本!

一种选择是检查CDN级别的用户代理并绕过移动用户的缓存检索。然而,移动用户推动网站访问量的特定比例,而向移动用户提供非缓存内容目前不是一种选择。

+0

解决此问题的简单方法是使用**媒体查询**为响应式设计**服务相同的页面。这样,无论分辨率如何,一个缓存页面都可以提供给每个人,而且您无需摆弄不可靠的使用者。 – rlemon 2012-04-12 12:17:10

回答

1

在CDN级别,您可以为移动设备添加?mobileoption查询字符串。然后,只有当该查询字符串存在时才显示移动/桌面选项页面。

相关问题