gpt4 book ai didi

Varnish 从不发送If-Not-Modified

转载 作者:行者123 更新时间:2023-12-03 17:45:32 24 4
gpt4 key购买 nike

我正在尝试使用 Varnish 来缓存rpm和其他巨型二进制文件。我所期望的是,当对象在缓存中过期时,varnish会将带有If-Not-Modified的请求发送到后端,然后假设该对象没有变化,varnish会刷新本地缓存对象上的ttl而不下载新的。我写了一个测试后端来生成特定的请求(设置小的max-age和诸如此类的东西,以及查看头 Varnish 发送的消息),但是除了完全获取之外,我什么也没得到。永远不会发送If-Not-Modified。我的VCL基本上是默认的VCL。我尝试设置小ttl/宽限期,但没有任何有趣的行为。

Varnish 甚至能够做到我想要的吗?如果是这样,是否有人做过类似的事情并可以给出提示?

最佳答案

当对象过期时发送到后端的请求是 Varnish 从客户端收到的请求。

那么在测试您的设置时,您是否在向 Varnish 的请求中发送 If-Not-Modified header ?

查看 https://www.varnish-software.com/wiki/content/tutorials/varnish/builtin_vcl.html 以了解内置的 VCL 是什么。

vcl_backend_fetch 下,如果缓存中没有对象,就会调用它,您可以看到陈旧对象周围没有复杂的逻辑,它只是按原样传递请求。

关于 Varnish 从不发送If-Not-Modified,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45898698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com