我使用码头清漆 - 请参阅million12/varnish如何缓存与清漆的请求?
GET请求很好用!
但我不知道我必须设置缓存POST请求的设置。
在谷歌我发现很多帖子(从2010年或2011年),它说POST请求不能缓存与清漆 - 这种说法仍然正确?
还有另一种缓存POST请求的方法吗?
这里我varnish.vcl设置:
vcl 4.0;
backend default {
...
}
# Respond to incoming requests.
sub vcl_recv {
unset req.http.Cookie;
}
# Set a header to track a cache HIT/MISS.
sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-Varnish-Cache = "HIT";
}
else {
set resp.http.X-Varnish-Cache = "MISS";
}
}
# Not cache 400 - 500 status requests
sub vcl_backend_response {
if (beresp.status >= 400 && beresp.status <= 600) {
set beresp.ttl = 0s;
}
}
感谢您的帮助!
为什么要缓存Post请求?我认为在概念上是错误的。看看[this](http:// stackoverflow。com/questions/626057/is-it-it-it-cache-post-methods-in-http) – Redithion
我用公司内部的API计算大事情。 有几乎相同的POST请求。 这就是为什么我正在寻找一个解决方案来缓存POST请求以获得更好的性能 – user1199255
如果你在后端检查它会不会更好? – Redithion