YUM安装方法:
1.系统需求
最好是全新系统,我在centos6X64安装,yum安装支持centos5或6,安装前先把httpd卸载,执行: yum remove httpd
2.开始安装,执行:
# rpm --nosignature -i
http://repo.varnish-cache.org/redhat/varnish-3.0/el5/noarch/varnish-release-3.0-1.noarch.rpm
# yum install varnish
大约一分钟即可安装完毕
3.配置varnish:
只需要编辑一个文件,在 /etc/varnish/default.vcl 以下是基本范例:
backend web1 { #web1为定义名称随便写
.host = "你的源站ip"; #你需要加速的网站ip
.port = "80"; #你的源站端口,默认80
.connect_timeout = 1s; #连接超时时间
.first_byte_timeout = 5s;
.between_bytes_timeout = 2s;
}
backend web2 { #这里是第二个源站
.host = "你的第二个源站ip";
.port = "80";
.connect_timeout = 1s;
.first_byte_timeout = 5s;
.between_bytes_timeout = 2s;
}
#acl
acl purge {
"localhost";
"127.0.0.1";
"192.168.169.0"/24;
}
sub vcl_recv {
if (req.request == "PURGE") {
if (!client.ip ~ purge)
{
error 405 "Not allowed.";
}
return(lookup);
}
if (req.http.host ~ "^google.com") { #web1对应的域名
set req.backend = web1;}
elseif (req.http.host ~ "^(www)|(my).baidu.com") { #web2对应的域名
set req.backend = web2;}
else {
error 404 "Caesar's cache-server ! QQ: 189717888"; #如果域名不在以上范围的出错提示
#set req.backend = web1;
}
if (req.request != "GET" && req.request != "HEAD") {
return(pipe);
}
elseif (req.url ~ ".(php|cgi)($|?)") #动态页面直接通过,不缓存
{
return(pass);
}
return(lookup);
}
sub vcl_hit {
if (req.request == "PURGE") {
set obj.ttl = 0s;
error 200 "Purged.";
}
}
sub vcl_miss {
if (req.request == "PURGE") {
error 404 "Not in cache.";
}
}
4.启动varnish
varnishd -f /etc/varnish/default.vcl -s malloc,1G -T127.0.0.1:2000
其中1G为varnish使用内存大小,根据自己情况定,一般为物理内存的三分之一大小
结束varnish命令:
pkill varnish
5.解析你的域名到varnish服务器
6.HAVE FUN !
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。