一张图片,cache-control的max-age被设置为一年后,那么也就是说这一年内,浏览器会一直从缓存中取用这张图片,那么如果服务器在突然在某一天更新了这张图片,但是浏览器无从得知,那么服务器要怎样让浏览器自动更新?
一张图片,cache-control的max-age被设置为一年后,那么也就是说这一年内,浏览器会一直从缓存中取用这张图片,那么如果服务器在突然在某一天更新了这张图片,但是浏览器无从得知,那么服务器要怎样让浏览器自动更新?
1.在url的查询参数中加入版本参数,例如:
http://url.com/?v=2333
浏览器会因为参数不同而向服务器发出请求,但是服务器是不会管你参数是不是一样,只要url是同一个,就会返回同一个文件。
2.可以在参数中加hash=hgfdxjkk.
有两种办法,一种是清除浏览器中的缓存,重新加载新的图片(不推荐);另一种是将修改的图片加上版本号,比如原来图片是111.jpg,修改后变成112.jpg,那么图片名变了,浏览器会重新加载新的图片。
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
8 回答6.5k 阅读
2 回答4.3k 阅读✓ 已解决
2 回答863 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
Http状态码:304。用以标记源站内容是否变更。如果没有变更,则继续使用缓存,如果变更,则重新请求新的内容。