我有一个使用 esi:include 标记来包含模块的内容页面,所以让我们说
/content.html
包含
<esi:include src="/_esi/module.html">
两个 url 在其响应中发送缓存控制标头。对于 /content.html 它是
Cache-Control: public, max-age=86400
对于 /_esi/module.html 它是
Cache-Control:public, max-age=3600
当我加载 /content.html 时,我可以看到我从清漆中获得了一个缓存响应,并且 module.html 标记被适当地包含,但是,当我更改 module.html 并禁止它时:ban req.url == /_esi/module.html
或者即使我使该禁令更广泛:ban req.url ~ _esi
我的浏览器中的页面仍然没有改变。
我似乎在清漆文档中找不到太多关于此的内容。我是否能够显式地使包含的内容(即来自 ESI url 的片段)无效,还是必须等待它过期?
我也尝试实施和使用 PURGE 来实现这一点,但我似乎仍然无法从该包含中获得新鲜内容。