Hướng dẫn cài đặt Varnish Cache trên DirectAdmin
Cài đặt thư viện:
Với CentOS 5:
Với CentOS 6:
Cài đặt Varnish Cache:
Sửa /etc/varnish/default.vcl Và thay đổi (Giả sử bạn sử dụng port 8080 cho apache), Đổi IP 123.123.123.123 thành IP server của bạn:
.host = "123.123.123.123";
.port = "8080";
}
Sửa file /etc/httpd/conf/httpd.conf và đổi listening port thành 8080:
Sửa file /etc/httpd/conf/extra/httpd-vhosts.conf:
# -SNIP-
#
<VirtualHost 123.123.123.123:80>
Thành:
LogFormat "%O \"%r\"" homedir
NameVirtualHost 127.0.0.1:8080
NameVirtualHost 123.123.123.123:8080
NameVirtualHost 123.123.123.123:443
# -SNIP-
#
<VirtualHost 127.0.0.1:8080 123.123.123.123:8080>
Copy templates DirectAdmin đến folder "custom" directory:
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
Chúng ta cần thay đổi tất cả các biến trong các file template
sed -i 's/<VirtualHost |IP|:|PORT_80| |MULTI_IP|>/<VirtualHost 127.0.0.1:8080 |IP|:8080 |MULTI_IP|>/g' *
Sau đó cài reverse proxy module choApache:
hoặc wget https://fossies.org/linux/www/apache_httpd_modules/old/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
Nếu bạn đã cài đặt Apache 2.4, bạn sẽ nhận được lỗi thông bao khi thực thi lệnh apxs:
Trích
mod_rpaf-2.0.c:151: error: 'conn_rec' has no member named 'client_addr'
mod_rpaf-2.0.c:151: error: 'conn_rec' has no member named 'client_ip'
mod_rpaf-2.0.c: In function 'change_remote_ip':
mod_rpaf-2.0.c:164: error: 'conn_rec' has no member named 'client_ip'
mod_rpaf-2.0.c:183: error: 'conn_rec' has no member named 'client_ip'
mod_rpaf-2.0.c:186: error: 'conn_rec' has no member named 'client_ip'
mod_rpaf-2.0.c:187: error: 'conn_rec' has no member named 'client_addr'
mod_rpaf-2.0.c:187: error: 'conn_rec' has no member named 'client_ip'
apxs:Error: Command failed with rc=65536
Chúng ta cần patch file trước khi thực thi lệnh apxs:
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
Sửa file /etc/httpd/conf/extra/httpd-includes.conf và thêm:
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1
RPAFheader X-Forwarded-For
</IfModule>
Chúng ta đổi tất cả các file cấu hình DirectAdmin cho các user hiện tại:
Sửa /etc/sysconfig/varnish và đổi VARNISH_LISTEN_PORT thành 80:
Restart httpd và start varnish:
service varnish start
Cuối cùng là cấu hình cho varnish auto start khi reboot:
Chúc các bạn thành công.