我有一台运行 Apache+Drupal 的 centos 5.x 服务器,带有 13 个虚拟主机。这些虚拟主机都是顶级域。Munin 报告称,一个月内有几天交换量很大,我发现这些用户大多是匿名用户。所以我想到让 varnish 处理匿名流量。我在网上搜索了一下,没有找到关于为 VHOSTS 配置 VCl 文件的文献。如果有人能给我指出来源,我将不胜感激。
答案1
Varnish 没有需要要了解 vhost,它在第 7 层运行 - 它只需监听 IP 并传递给相应的后端(Apache)来决定它需要为哪个虚拟主机提供服务。
在区分配置方面,你可以使用http.host
-
例如。
sub vcl_recv {
# Don't cache www.example.com
if (req.http.host ~ "^(www\.example\.com)$") {
return(pass);
}
否则,如果您不需要虚拟主机特定的配置 - 您甚至不需要让 Varnish 知道。