七牛的CDN分发需要多久?= =

最近我的博客进入了频繁更新的阶段,我的main.js文件经常有修改。每次修改之后我就去七牛云空间删掉原来的文件,然后再上传新的文件,然后问题来了:
通过页面上源代码的引用的main.js文件的版本总是要比最新修改的版本慢好多,就算修改maxAge属性也没有用,但是我从云空间手动下载的文件确是最新的。
我理解七牛作为云存储服务提供商,CDN的文件分发需要时间。但是我不理解的是,为什么这个文件更新这么慢,有时甚至还出现了回复到更早之前的版本的状况?。。

阅读 5.9k
1 个回答

maxAge属性是带在请求返回的response header里的,控制的客户端的缓存时间,而不是CDN的缓存时间,访问到旧的文件是由于CDN的缓存未及时更新,默认状态下,CDN缓存是24h的缓存有效期,如果在七牛空间更新,那么一般10min开始,CDN节点就会产生更新,但是全网更新还是得24h。

有两种方案可以解决你目前的问题:
1. 在你的css或者js文件后面带上?v=20150101类似的版本号,将这些文件放在你的页面中,保证每次更新资源后,你的页面可以访问到最新的js或者css文件;
2. 将你更新的资源url,在空间设置的高级设置中刷新一下,不过这个操作成本比较高。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
1 篇内容引用