![告诉浏览器缓存直到上次修改日期发生变化?](https://linux22.com/image/805013/%E5%91%8A%E8%AF%89%E6%B5%8F%E8%A7%88%E5%99%A8%E7%BC%93%E5%AD%98%E7%9B%B4%E5%88%B0%E4%B8%8A%E6%AC%A1%E4%BF%AE%E6%94%B9%E6%97%A5%E6%9C%9F%E5%8F%91%E7%94%9F%E5%8F%98%E5%8C%96%EF%BC%9F.png)
我的网站由静态 HTML 文件组成,通常每天重新发布一次,有时甚至更多。
我使用的是 Apache。在我的网站的 vhost 设置中,我想告诉浏览器无限期地缓存 HTML 文件,直到 Apache 发现它们被修改。因此,一旦 HTML 文件发生更改,Apache 应立即开始告诉浏览器它已更改并发送更新的文件。一旦发布新文件,浏览器应立即开始接收该文件……它们永远不应接收旧版本的文件。也许
ExpiresByType text/html modification
并且没有“加上 x 天”。
这样的事可能吗?
答案1
这就是它已经工作的原理,你不需要做任何事情(在这里查看有关 Etags 的更多信息:http://en.wikipedia.org/wiki/HTTP_ETag)。
要确定您的 ETag 正常工作,请检查您的 Apache 日志并确保您看到的304
响应大多比原始文件小,并且200
在文件更改后发送响应。
您还可以在浏览器的开发人员工具中查看响应代码。