我已经在装有WHM的高端专用服务器上安装了Varnish,该服务器运行在10-13个网站上,所有这些都在WordPress上。我看到命中率非常低,“varnishhist”的失误率非常高。此外,当我varnishtop -i txurl
时,我只是看到Apache以非常高的速率请求“/”URL(而不是每个网站URL)。以下是摘录:
4.02 TxURL /
1.00 TxURL /wp-content/uploads/2014/12/034kj343.jpg
0.96 TxURL /wp-content/uploads/2014/12/dfkkj30434.jpg
0.96 TxURL /wp-content/uploads/2014/10/3403402022.jpg
我认为清漆甚至必须缓存每个站点的主页并发送回客户端而不是从后端请求。有什么建议吗?
答案 0 :(得分:0)
行。我设法找到了解决方案。这是我当前的VCL文件非常好。
sub vcl_recv{
if (req.http.Cookie && req.http.Cookie ~ "(wordpress_|PHPSESSID)")
{ return(pass); }
if (req.url ~ "wp-admin|wp-login") {
return (pass);
}
else{
unset req.http.Cookie;
} #since we can not unset all, but leave wp-admin
}
sub vcl_backend_response {
if (bereq.url !~ "wp-admin|wp-login") {
unset beresp.http.Set-Cookie;
}
#beware that you are ignoreing all the headers now:
unset beresp.http.Cache-Control;
# cache everything for 60 minutes
if(beresp.ttl <= 0s) { set beresp.ttl = 3600s; }
}