我最近一直在研究Varnish并进行一些重要的谷歌搜索。我们最近在我们运行电子商务网站的服务器上预期了圣诞节。我们将在未来几周内增加回访,所以使用Varnish似乎是一个好主意。
我想知道是否有人可以为我澄清一些事情 - 当使用Varnish时,如果用户第一次到达时它会检测到新的cookie(因为会话用于购物车)并缓存他们访问的页面。
但是,如果我们想要缓存超过客户的重复访问,我在一个单独的stackoverflow线程上看到,使用以下内容编辑.vcl将帮助它缓存页面,即使使用了session_start:
sub vcl_recv {
unset req.http.Cookie;
return (lookup);
}
sub vcl_fetch {
unset beresp.http.Set-Cookie;
set beresp.ttl = 24h;
return(deliver);
}
我的问题是 - 关于-what-缓存的具体细节,我有点困惑。这会缓存某人的购物车,从而为该产品页面的所有访问者提供此服务吗?
道歉,如果我在这里错过了一个基本的清漆点;在最糟糕的情况下,它可以帮助减轻回访的负担,但缓存更多的网站会更好!
非常感谢
答案 0 :(得分:2)
Varnish不会(默认情况下)使用设置Cookie缓存页面。 Cookie将状态引入HTTP,因此Varnish无法知道页面是否已更改。
您的上述代码段不会解决您的问题。它只会完全删除Cookie标头。 (即,您的PHP后端不会收到会话cookie。)
根据您的网站的具体情况,您可能希望: