配置CDN支持手机和PC端的不同访问

解决使用cdn后无法判断PC端或者移动端的问题

一般我们是通过JS 判断当前浏览器的信息
在这里插入图片描述
问题描述
需要设置CDN对不同的UA做不同的缓存,实现手机访问网站跳转到Wap页面,PC端访问跳转到PC端的页面。

问题原因
因为通过UserAgent头识别用户的客户端,然后返回不同的内容给不同的UA用户。但是CDN缓存并不会区分UA,只会区分URL,所以相同URL缓存的内容是一致的,无论UA是什么样

解决方案
CDN是支持对不同的UA,设置不同的缓存,这个是根据vary头来控制的。vary头里面的字段一般是头信息的字段,表示CDN会检测这个头信息。如果内容不一致就缓存不同的内容,命中时也一样,必须头信息一致才会缓存。这个vary头需要在源站添加。在Nginx中增加如下信息。

add_header Vary "Accept-Encoding, User-Agent"; 

以 aws 的为例;
我们可以将 User-Agent 加入 白名单标头,这样cdn 就不会对它进行缓存了
在这里插入图片描述
第一次接触这个知识点,按照自己理解做了个笔记,有不对的地方,希望大佬们指出。

原文链接:https://blog.csdn.net/qq_46021503/article/details/109893320?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522165918321816781685358459%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=165918321816781685358459&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-24-109893320-null-null.nonecase&utm_term=cdn

原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/289

(0)
上一篇 2022年8月3日 15:31
下一篇 2022年8月3日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

优速盾注册领取大礼包www.cdnb.net
/sitemap.xml