Làm sao để xóa cache trong Varnish
Varnish làm sao để xóa cache thông qua HTTP
Trong một số trường hợp nhất định, khi việc cấu hình các rule cache không thể tự động chúng ta muốn tự tay xóa cache trong varnish một cách thủ công, hoặc sử dụng khi phát triển sản phẩm, lúc đó việc cấu hình PURGE cache và hiểu cách sử dụng sẽ thực sự hữu dụng.
Chúng ta cấu hình PURGE varnish như sau:
acl purge {
# Những Ip cho phép purge cache
"localhost";
"127.0.0.1";
}
sub vcl_recv {
# Check điều kiện khi purge cache
if (req.method == "PURGE") {
if (!client.ip ~ purge) {
return(synth(405,"Not allowed."));
}
return (purge);
}
}
Chúng ta để ý đoạn code trên sẽ cho phép các IP: 127.0.0.1, localhost request tới varnish với http header: PURGE
Bây giờ chúng ta sẽ vào sửa một đoạn text trong site đã được cache, và chạy lệnh sau để purge cache nhé :D
curl -X PURGE <domain/path>
Ví dụ: curl -X PURGE localhost:8080
Sau đó chúng ta truy cập vào site để kiểm tra lại cache đã được xóa đi chưa.
Post a Comment