我有一个页面,其内容将显示给所有用户,但问题是我在页面加载后完成了ajax调用此调用不可缓存但它需要从缓存页面中删除的cookie,我可以做些什么来保留cookie并仍然获得缓存页面?
答案 0 :(得分:1)
在vcl_hash例程中,您可以确切地确定如何散列请求。例如,以下内容仅对请求URI进行哈希处理,不包括cookie:
sub vcl_hash {
set req.hash += req.url;
set req.hash += req.http.host;
}
请注意,您可能希望排除ajax调用以及配置中无法缓存的任何其他请求。或者更好的是,如果请求是可缓存的,请让后端发送标头,并让varnish对此进行操作。
请注意使用setcookie缓存页面,它应该没问题。