我有这个问题,我使用Varnish 3.0,我想避免缓存错误。我知道这段代码应该这样做:
if (beresp.status >= 500) {
set beresp.saintmode = 2m;
if (req.request != "POST") {
set beresp.ttl = 0s;
return(restart);
} else {
set beresp.ttl = 1s;
error 500 "Failed";
}
}
但是,关注我的是Varnish用给定的错误替换旧的缓存。我的意思是,如果我的后端关闭(我设置了宽限模式),我不希望Varnish返回缓存错误。
所以,我的问题是,当设置beresp.ttl = 0s时,如果Varnish替换为宽限模式存储的对象;
答案 0 :(得分:1)
好吧,我刚做了一些测试,Varnish没有替换缓存的对象。