【发布时间】:2015-08-26 23:36:33
【问题描述】:
当我从后端收到错误 500 时,我使用以下代码来延长 varnish 的宽限期:
# If backend returns 500 error then boost the cache grace period...
if (beresp.status == 500) {
set beresp.grace = 1m;
return (retry);
}
但我只想在我有另一个缓存时延长宽限期,如果我没有缓存,我只想缓存错误。
缓存的后端响应配置“vcl_backend_response”:
# Cache 1 day
if(bereq.url ~ "^/"){
set beresp.http.X-cachePath = beresp.http.X-cachePath + "1d::";
unset beresp.http.set-cookie;
unset beresp.http.Cache-Control;
set beresp.ttl = 1d;
set beresp.grace = 1h;
return (deliver);
}
这可以用 varnish 4 做到吗?
谢谢大家!
【问题讨论】:
标签: caching varnish varnish-vcl