Jul
30
2019
阿里云CDN如何处理源站的302跳转?
根据客户终端的设备,决定对应网站的前端界面样式是常见的网站设计需求。该需求的常见设计思路是,源站根据用户的请求,在源站对用户的请求做302跳转到对应的页面上进行服务。
在对网站部署CDN后,由于CDN的产品性质,CDN会对用户的访问资源缓存到CDN的节点上,以便后续可以加快用户的访问。这种情况下,可能会出现第一个用户访问后,对相应的302请求进行缓存。而其他不同终端设备的用户通过该URL进行访问时,就会出现访问到的仍然是第一个用户缓存的302请求到的页面。这就造成用户源站对不同终端设置的适配功能失效。
解决这种问题的思路是:
•设置对第一个请求的URL不缓存,而对302跳转后的页面进行缓存。这样设置能够保证用户源站的终端配置功能生效的同时,也可以实现CDN对于页面的加速。CDN对于缓存的配置暂时支持目录和文件后缀名,用户可以结合这两种的缓存配置以及其优先级来根据自己的站点目录结构定义初始URL不缓存。
•在源站对于初始页面设置不缓存,因为源站的不缓存策略对于CDN是具有最高优先级的。只要该页面的response中带有下述头信息,就能保证该页面不缓存。
▫Cache-control:no-cache,no-store,private
▫Cache-control:s-maxage=0,max-age=0
▫pragma:no-cache
本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。
我有话说: