Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用于桌面和移动站点的CDN缓存_Php_Caching_Mobile_Cdn - Fatal编程技术网

Php 用于桌面和移动站点的CDN缓存

Php 用于桌面和移动站点的CDN缓存,php,caching,mobile,cdn,Php,Caching,Mobile,Cdn,我有一个基于PHP的web应用程序,希望能够为移动用户提供通过一组专用的“移动友好”页面查看我网站内容的选项。移动站点的URL结构与桌面站点不同 这个想法是,当移动用户第一次点击索引页面时,regexp会检查用户代理,如果他们是移动设备,他们可以选择查看站点的桌面或移动版本 问题是我正在用CDN提供者(Cotendo)缓存静态HTML。这意味着,当缓存被填充时,移动用户可能会看到桌面站点的缓存版本,并绕过移动/桌面选项页面。这还意味着,如果缓存为空,移动用户可以强制CDN存储移动/桌面选项页面的

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

这个想法是,当移动用户第一次点击索引页面时,regexp会检查用户代理,如果他们是移动设备,他们可以选择查看站点的桌面或移动版本

问题是我正在用CDN提供者(Cotendo)缓存静态HTML。这意味着,当缓存被填充时,移动用户可能会看到桌面站点的缓存版本,并绕过移动/桌面选项页面。这还意味着,如果缓存为空,移动用户可以强制CDN存储移动/桌面选项页面的缓存版本


一种选择是在CDN级别检查用户代理,并绕过移动用户的缓存检索。但是,网站流量的很大一部分是由移动用户驱动的,目前不允许向移动用户提供非缓存内容。

在CDN级别,是否可以为移动设备添加?MobileOptions querystring。然后,仅当查询字符串存在时才显示移动/桌面选项页。

在CDN级别,您可以为移动设备添加?mobileoption查询字符串。然后仅在出现查询字符串时显示移动/桌面选项页。

解决此问题的简单方法是使用媒体查询,以响应性设计为同一页面提供服务。这样,无论分辨率如何,都可以为每个人提供一个缓存页面,而不必处理不可靠的用户代理。解决这一问题的简单方法是使用媒体查询,以响应设计为同一页面提供服务。这样一来,无论分辨率如何,一个缓存页面都会提供给每个人,而您不必摆弄不可靠的用户代理。