DA面板安装Varnish缓存。Varnish 是一款高性能的开源 HTTP 加速器,可将网页缓存到内存,实现非凡的速度和降压效果。
文中以 Apache 2.2 作为示范,如果自己的主机安装的是 Apache 2.4 的话还是比较建议自己研究一下如何使用 mod_remoteip 来获取真实 ip。
本文仅适合 RHCL/CentOS 类系统
一、第一步:安装依赖 & 导入 rpm 包。
依赖直接使用 yum 安装即可。
yum -y install automake autoconf libtool ncurses-devel libxslt groff pcre-devel pkgconfig
如果你是 CentOS 5 就执行:
rpm --nosignature -i http://repo.varnish-cache.org/redhat/varnish-3.0/el5/noarch/varnish-release/varnish-release-3.0-1.el5.centos.noarch.rpm
如果你是 CentOS 6 就执行:
rpm --nosignature -i http://repo.varnish-cache.org/redhat/varnish-3.0/el6/noarch/varnish-release/varnish-release-3.0-1.el6.noarch.rpm
做好如上措施之后,开始安装好 Varnish:
yum -y install varnish
二、第二步:修改各个配置。
如下第 4 行命令有“1.2.3.4”请把它改为你服务器的 IP:
sed -i 's/.port = "80";/.port = "8080";/g' /etc/varnish/default.vcl sed -i 's/Listen 80/Listen 8080/g' /etc/httpd/conf/httpd.conf sed -i 's/<VirtualHost 127.0.0.1:80>/<VirtualHost 127.0.0.1:8080 1.2.3.4:8080>/g' /etc/httpd/conf/extra/httpd-vhosts.conf mkdir /usr/local/directadmin/data/templates/custom cp -p /usr/local/directadmin/data/templates/virtual_host2.conf /usr/local/directadmin/data/templates/custom/virtual_host2.conf cp -p /usr/local/directadmin/data/templates/virtual_host2_sub.conf /usr/local/directadmin/data/templates/custom/virtual_host2_sub.conf cp -p /usr/local/directadmin/data/templates/redirect_virtual_host.conf /usr/local/directadmin/data/templates/custom/redirect_virtual_host.conf sed -i 's/<VirtualHost |IP|:|PORT_80| |MULTI_IP|>/<VirtualHost 127.0.0.1:8080 |IP|:8080 |MULTI_IP|>/g' /usr/local/directadmin/data/templates/custom/* sed -i 's/VARNISH_LISTEN_PORT=6081/VARNISH_LISTEN_PORT=80/g' /etc/sysconfig/varnish
三、第三步:安装 rpaf 获取真实 IP。
Apache 2.2 安装方法:
wget http://www.stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz tar xzf mod_rpaf-0.6.tar.gz cd mod_rpaf-0.6 apxs -cia mod_rpaf-2.0.c
Apache 2.4 安装方法:
wget http://www.stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz tar xzf mod_rpaf-0.6.tar.gz cd mod_rpaf-0.6 yum -y install git git clone git://gist.github.com/2716030.git patch mod_rpaf-2.0.c 2716030/mod_rpaf-2.0.c.patch apxs -cia mod_rpaf-2.0.c
安装好 rpaf 之后要修改 http 引入的配置:
vi /etc/httpd/conf/extra/httpd-includes.conf
在最底下加入如下代码:
#For the rpaf <IfModule mod_rpaf-2.0.c> RPAFenable On RPAFsethostname On RPAFproxy_ips 127.0.0.1 RPAFheader X-Forwarded-For </IfModule>
最后让 DirectAdmin 更新一下配置:
echo "action=rewrite&value=httpd" >> /usr/local/directadmin/data/task.queue
最后步骤:重启 Apache 与 Varnish,并设置开机启动。
service httpd restart service varnish start chkconfig varnish on
这 4 个步骤都完毕之后,你可以利用如下方式来对你的主机进行测试:
curl -I 127.0.0.1
然后几秒钟再次 curl,如下图所示:
如果在你第二次 curl 的时候,X-Varnish 的 ID 变成了两个、并且 Age 大于 0 即说明缓存成功。
这么好的东西又不告诉我,还能不能在一起玩耍了!!!!
loc有人发的 我搬过来了 你经常来我博客逛啊