我试图使清漆工作与最后修改的标题,但无论我做什么我的页面在120s缓存,并且清漆永远不会与后端重新验证。光油4不尊重缓存控制:必须重新验证
我的后端在发送这些标题:
Cache-Control: must-revalidate, proxy-revalidate, public, stale-while-revalidate=0
Last-Modified: Fri, 22 Jan 2016 03:32:33 GMT
当我登录命中对象的TTL,它的价值总是被设置为120秒。
我使用默认VCL配置光油4.
祺,
编辑:一些搜索后,我发现,120秒是光油的缺省TTL值。但为什么他忽视最后修改?
这是一个想法: 当'grace'设置为0并且'keep'为1周时,每个请求都会触发后端,并且必须等待来自后端的响应。除此之外,如果后端服务器关闭,则不会传送任何内容。 如果您将grace设置为1w而不是在宽限期内,则会立即回复请求,并且Varnish将从后端检索最新的信息以用于下一个请求。另外,如果后端服务器关闭,缓存的值仍然传递。 – Ronald
原始响应似乎表明*每个*请求都必须重新生效(“proxy-revalidate”和“stale-while-revalidate = 0”),因此不允许发送缓存版本。 –