Home  >  Article  >  Backend Development  >  七牛上的图片使用版本号后缀, 老版本图片就能自动被覆盖吗?

七牛上的图片使用版本号后缀, 老版本图片就能自动被覆盖吗?

WBOY
WBOYOriginal
2016-06-06 20:30:301119browse

比如用户的头像, 第一次上传的原始图片为jpg?v=1 然后自动在CDN中缓存了

然后用户更新头像, 第二次上传的图片为jpg?v=2 因为后缀不同,所以刷新后头像就显示成新图片了

这个时候jpg?v=1这个URL在浏览器中仍然显示为旧图片, 但几天之后,这个URL也自动变成了jpg?v=2的新图片

请问这是七牛默认的功能吗? 还是要自己写什么代码? 如何能让旧版本的图片自动显示为最新版本的呢?

回复内容:

比如用户的头像, 第一次上传的原始图片为jpg?v=1 然后自动在CDN中缓存了

然后用户更新头像, 第二次上传的图片为jpg?v=2 因为后缀不同,所以刷新后头像就显示成新图片了

这个时候jpg?v=1这个URL在浏览器中仍然显示为旧图片, 但几天之后,这个URL也自动变成了jpg?v=2的新图片

请问这是七牛默认的功能吗? 还是要自己写什么代码? 如何能让旧版本的图片自动显示为最新版本的呢?

这是CDN的缓存机制。

同名文件内容做修改或者被覆盖后,CDN会持续缓存一段时间旧文件。

可以通过

http://qiniucdn/wenjianming?v=123 这样加版本号参数来刷新缓存,访问最新的资源。

24小时后,这个文件的缓存自动刷新,就能访问到最新的文件:

http://qiniucdn/wenjianming

如果想访问最新的文件,还是给链接的后面加上版本号参数比较好。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn