我有一个基于 PHP 的 Web 应用程序,并希望能够为移动用户提供通过一组专用的“移动友好”页面查看我的网站内容的选项。移动网站的 URL 结构与桌面网站不同。
这个想法是,当移动用户第一次点击索引页面时,正则表达式会检查用户代理,如果他们是移动设备,他们可以选择查看桌面版或移动版网站。
问题是我正在使用我的 CDN 提供商 (Cotendo) 缓存静态 HTML。这意味着当缓存被填充时,移动用户可能会看到桌面站点的缓存版本并绕过移动/桌面选项页面。这也意味着,如果缓存为空,移动用户可以强制 CDN 存储移动/桌面选项页面的缓存版本!
一种选择是在 CDN 级别检查用户代理并绕过移动用户的缓存检索。但是,该网站的很大一部分流量是由移动用户驱动的,目前还不能选择向移动用户提供非缓存内容。