我正在使用HTTP 1.1
Cache-Control
标头来实现客户端缓存。由于我每个月只更新一次网站,因此我希望使用 缓存CSS
和文件 30 天。问题是 定义的 30 天期限与网站更新周期不一致,它从用户访问网站的那一刻开始,并在 30 天后结束,这意味着在此期间可能会发生更新,而用户将在一段时间内使用过时的内容,这可能会破坏网站的呈现,例如如果 和不再匹配。JS
Cache-Control: max-age=2592000
Cache-Control
HTML
CSS
我怎样才能在几天的时间内执行客户端内容缓存,但又以某种方式让用户CSS/JS
在网站更新后刷新他们的文件?
我能想到的一个解决方案是,如果网站更新可以安排,那么max-age
服务器返回的值可以每天相应减少,这样无论人们何时访问网站,缓存期的结束都会与网站的更新相吻合,但每天更改服务器配置违背了我的系统管理员原则之一(一旦运行,就不要碰它)。