由于使用了cdn后,pc和移动端访问同一页面,只会缓存一个类型的页面,导致数据错乱,体验差
查询过相关资料后发现,虽然cdn能够自动识别页面是pc端还是移动端,但是在服务器上还是得做一些设置才能让cdn正确识别
CDN是支持对不同的UA,设置不同的缓存,这个是根据vary头来控制的。vary头里面的字段一般是头信息的字段,表示CDN会检测这个头信息。如果内容不一致就缓存不同的内容,命中时也一样,必须头信息一致才会缓存。这个vary头需要在源站添加。在Nginx中增加如下信息。
add_header Vary "Accept-Encoding, User-Agent";
如果查看页面发现有两个Vary 如下
可以将gzip_vary 的值设为off
完成以上操作后,保存nginx配置,并重载配置,或重启nginx。
请问如果是阿帕奇呢?该如何配置?