I've several varnish cache servers (v2.1), and I'm looking to add the hostname in the headers in the response from varnish -- so I know which server is (or not) serving cached pages. Upon googling, I found this snippet, but it gives errors:
sub vcl_deliver {
if (obj.hits > 0) {
set resp.http.X-MH-Cache ="HIT " obj.hits " "*
server.hostname* " " resp.http.Age;
} else {
set resp.http.X-MH-Cache ="MISS " *server.hostname* ""
}
}
I am not tied to this snippet per se. Ideally, I would like to set hostname in the event of a miss or a hit.
I am fairly new to vcl files, so any guidance and assistance would be much appreciated. Many thanks!
KM
Stumbled upon this by chance (isn't it always that way?): https://www.varnish-cache.org/trac/wiki/VCLExampleHitMissHeader -- exactly what I was looking for.
More likely the error was due to the star signs, and missing plus signs when building up the "X-MH-Cache response header:
The working vcl code snippet looks like this:
A snapshot (January 2nd, 2012) to the URL from of the answer (January 27th, 2012) can be found on the Internet Archive site here: https://web.archive.org/web/20120309095329/https://www.varnish-cache.org/trac/wiki/VCLExampleHitMissHeader