3

我对消失缓存的工作有疑问。我用我的 apache 网络服务器安装了清漆缓存并正确配置了它,这样我就可以通过清漆缓存访问网页。

问题就在这里,我创建了一个“test.php”页面,可以通过浏览器访问。我已经更改了页面的内容,并立即再次通过浏览器访问了同一页面。第二次显示更改的内容。为什么会这样?据我所知,第二次也应该显示旧内容(?);因为清漆缓存将保留网页内容一段时间。我需要更改任何设置吗?请指教。

谢谢你。

4

3 回答 3

2

如果您每次刷新时都看到最新的内容,那么您没有正确设置清漆。

Varnish 应该位于与 Apache 不同的端口上,因此请确保您在 varnish 端口上访问 test.php。

你可以把它放在你的配置中,看看它是否正在缓存..

sub vcl_deliver {
    # Add a header to indicate a cache HIT/MISS
    if (obj.hits > 0) {
        set resp.http.X-Cache = "HIT";
    } else {
        set resp.http.X-Cache = "MISS";
    }
    return (deliver);
}

如果您看到 X-Cache 标头,那么您知道它至少是通过清漆运行的。

于 2012-09-18T08:31:49.073 回答
2

您在页面中设置的 http 标头在决定是否缓存它们方面发挥着重要作用。阅读有关此的清漆文档

于 2012-09-18T08:34:23.660 回答
0

这个线程看起来很旧。但是这个值可以在 vanish config 中找到,设置VARNISH_TTL的值

# # Default TTL used when the backend does not specify one
VARNISH_TTL= 120

默认值为 120 秒,我相信您可以从那时起更改它

于 2019-09-04T06:34:49.673 回答