Hướng dẫn cấu hình Varnish listen trên 2 port 80 và 2313

Hướng dẫn chi tiết cách cấu hình Varnish listen trên 2 port là 80 và 2313. Khi có truy cập sẽ kết nối với backend 127.0.0.1 với port 8080 và 2313.

Lưu ý: Trường hợp này đặc biệt ở chỗ Varnish và Nginx cùng listen trên port 2313 nhé!.Giả sử IP server là 11.22.33.44.

– Đầu tiên bạn cấu hình Varnish listen trên 2 port là 80 và 2313 bằng cách mở file cấu hình tham số Varnish

nano /etc/sysconfig/varnish

Kéo xuống dưới cùng, chuyển tham số:

DAEMON_OPTS="-a ${VARNISH_LISTEN_ADDRESS}:${VARNISH_LISTEN_PORT} \

thành

DAEMON_OPTS="-a :80,11.22.33.44:2313 \

Bạn cần add thêm IP server vào port 2313 để phân biệt với Nginx cũng listen port 2313, trên host là 127.0.0.1.

– Tiếp theo, mở file VCL mặc định:

nano /etc/varnish/default.vcl

Thêm đoạn cấu hình port admin bên dưới backend default:

backend default {
.host = "127.0.0.1";
.port = "8080";
}

backend admin {
.host = "127.0.0.1";
.port = "2313";
}

Sau đó quy định rule khi nào thì sử dụng cấu hình backend default hoặc admin trong sub vcl_recv, ví dụ:

sub vcl_recv {
# Default backend is set to default
set req.backend_hint = default;
if (req.http.host == "example.com:2313") {
set req.backend_hint = admin;
}

– Restart Varnish và Nginx

service nginx restart
service varnish restart

Chúc bạn thành công!

Nguồn: hocvps.com