Trong cấu hình Varnish 3 của tôi (default.vcl), tôi đã cấu hình các mục sau để truyền thông tin qua các tiêu đề phản hồi:
sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-Cache = "HIT";
set resp.http.X-Cache-Hits = obj.hits;
} else {
set resp.http.X-Cache = "MISS";
}
set resp.http.X-Cache-Expires = resp.http.Expires;
set resp.http.X-Test = "LOL";
# remove Varnish/proxy header
remove resp.http.X-Varnish;
remove resp.http.Via;
remove resp.http.Age;
remove resp.http.X-Purge-URL;
remove resp.http.X-Purge-Host;
remove resp.http.X-Powered-By;
}
Nhưng điều duy nhất tôi có thể thấy là
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Type: text/html
Content-Length: 8492
Accept-Ranges: bytes
Date: Tue, 05 Feb 2013 10:11:02 GMT
Connection: keep-alive
Nó không hiển thị bất kỳ tiêu đề nào mà chúng tôi đã thêm vào bên trong vcl_deliver
phương thức.
EDIT: Đây là phương thức vcl_fetch của tôi:
sub vcl_fetch {
unset beresp.http.Server;
unset beresp.http.Etag;
remove req.http.X-Forwarded-For;
set req.http.X-Forwarded-For = req.http.rlnclientipaddr;
set beresp.http.X-Wut = "YAY";
if (req.url ~ "^/w00tw00t") {
error 750 "Moved Temporarily";
}
# allow static files to be cached for 7 days
# with a grace period of 1 day
if (req.url ~ "\.(png|gif|jpeg|jpg|ico|swf|css|js)$") {
set beresp.ttl = 7d;
set beresp.grace = 1d;
return(deliver);
}
# cache everythig else for 1 hours
set beresp.ttl = 1h;
# grace period of 1 day
set beresp.grace = 1d;
return(deliver);
}
Bất cứ ai cũng có ý tưởng làm thế nào để giải quyết vấn đề này vì KHÔNG có tiêu đề tùy chỉnh nào được bao gồm trong tiêu đề phản hồi ... Như bạn có thể thấy ở trên trong vcl_fetch
phương pháp của mình, tôi thêm một số tiêu đề phản hồi tùy chỉnh nhưng không có tiêu đề nào được hiển thị.
vcl_fetch
phương thức của tôi