阿里云CDN配置、缓存、刷新常见问题的解决方法

阿里云CDN的回源Host与源站的区别?
源站决定了回源时请求到哪个IP;回源Host决定回源请求访问到该IP上的哪个站点。
如果源站是域名,如www.a.com,回源Host为www.b.com,那么实际回源是请求到www.a.com解析到的IP,对应的主机上的站点www.b.com。
如果源站是IP,如192.168.1.1,回源Host为www.b.com,那么实际回源的是192.168.1.1对应的主机上的站点www.b.com。

接入阿里云CDN后,源站需要改造才能享受加速服务吗?
基本不需要。但是为了能够达到更好的加速效果,我们建议您先做动静分离,动态文件和静态文件分配在不同域名下,仅需要对静态资源做加速。

阿里云CDN加速支持非80端口吗?
目前阿里云CDN加速初始只支持HTTP协议的80端口,配置证书后支持HTTPS的443端口。

阿里云CDN支持POST请求吗?
阿里云CDN支持POST请求。

如何判断用户访问的是哪个阿里云CDN节点?
您可通过nslookup和ping命令可以获取用户访问的阿里云CDN节点的IP和延时丢包等基本的排错信息。

阿里云CDN命中率低是什么原因呢?
命中率低可能由以下原因造成:
缓存配置问题,如缓存时间较短。
HTTP Header导致无法缓存,请检查源站Cache-Control或Expires的设置。
源站类型问题,可缓存的内容少。
网站访问量低,过期时间短,命中的文件少,导致频繁回源。

用户感觉阿里云CDN访问慢怎么办?
大文件关注下载速度,小文件关注延时。首先得到用户访问慢的URL,通过测速网站判断是否访问慢(推荐工具:17ce)。
如果测速确实慢,源站属于自有源,协助用户排查源站机器负载和带宽是否受限。

为什么同名文件节点返回的文件大小不一致?
因为所有文件类型都默认缓存,阿里云CDN节点上可能存在不同的文件版本。
解决方法:
强制刷新文件,立即更新缓存。
带上版本号,例如:http://www.xxx.com/xxx.js?version=1。
更换其它文件名,不使用同名文件。

什么是CDN缓存过期配置?
缓存过期配置是指配置阿里云CDN加速节点在缓存您的业务内容时遵循的一套过期规则。
 
阿里云CDN节点上缓存的用户资源都面临“过期”问题。若资源处于未过期状态,当用户请求到达节点后,节点会将此资源直接返回给用户,提升获取速度;当资源处于过期状态(即超过了设置的有效时间),此时用户请求会由节点发送至源站,重新获取内容并缓存至节点,同时返回给用户。合理地配置缓存时间,能够有效的提升命中率,降低回源率,节省您的带宽。

如何调整缓存配置的优先级?
请参考缓存配置中的设置优先级。

阿里云CDN自有源可以设置不缓存某种文件吗?缓存时间设置成0,是否就是不缓存?
您可以按照目录和文件类型设置对应的缓存时间。若缓存时间设置为0,即阿里云CDN 节点不缓存该资源,用户每次发送访问请求至阿里云CDN节点时,阿里云CDN节点都需回源站拉取相应资源。

阿里云CDN默认的缓存配置是什么?
在域名接入时,默认配置如下:
所有文件默认30天缓存过期时间,常规动态文件(如.php .jsp .asp .aspx)默认缓存过期时间为0,对此类动态文件请求会直接回源。

阿里云CDN缓存的匹配方式是什么?
当设置了多条缓存策略时,相互之间会有重复,配置项列表第一条命中即为匹配。

什么是CDN刷新缓存?
刷新缓存方式有URL刷新、目录刷新和URL预热。
您在源站上更新资源后,如果希望用户访问不再获取旧资源,直接获取新资源,可以使用URL刷新功能。URL刷新是以文件为单位进行缓存刷新。

您在源站上更新资源后,如果希望用户访问不再获取旧资源,直接获取新资源,可以使用目录刷新功能。目录刷新是以目录为单位,将目录下的所有文件进行缓存刷新。

如果您希望阿里云CDN预先将资源由源站主动缓存至阿里云CDN节点,则可以使用URL预热功能。URL预热是以文件为单位进行资源预热。

CDN刷新和CDN预热的区别:
刷新后,会删除该资源在全网阿里云CDN节点上的缓存。当用户请求到达节点时,节点会回源站拉取对应资源,返回给用户并缓存到节点,保证用户获取到最新资源。
预热后,该资源会提前缓存到全网阿里云CDN节点。当用户请求到达节点时,可以直接在节点获取到资源。

阿里云CDN加速节点上的缓存内容是实时更新的吗? 
目前阿里云CDN加速节点上的缓存内容不会实时更新。阿里云CDN节点根据您在控制台配置的 缓存过期配置来更新缓存,若您需要实时更新某个文件的缓存,您可以通过缓存刷新的方式来进行。

阿里云CDN刷新支持对目录刷新吗?
支持,目前阿里云CDN已经支持URL刷新、目录刷新和URL预热。

为什么预热或刷新目录不生效?
请检查源站Last-Modified是否变动,Last-Modified若有变动会导致回源失败。

什么是HTTPS?
HTTPS是指超文本传输安全协议(Hypertext Transfer Protocol Secure),是一种在HTTP协议基础上进行传输加密的安全协议,能够有效保障数据传输安全。配置HTTPS时,需要您提供域名对应的证书,将其部署在全网阿里云CDN节点,实现全网数据加密传输功能。

阿里云CDN是否支持HTTPS配置?
阿里云CDN目前已经全面支持HTTPS配置,您可以上传自有证书进行部署。

阿里云CDN如何配置HTTPS证书?
您可以在阿里云CDN控制台中配置HTTPS证书