How do I get varnish to return in the http response header from which backend it took the response?
I have three servers in the backend, with a round robin director.
I would like varnish to write a X-Server-By header with the name or ip of the server from which the response was fetched, how can this be done?
Solution 1:
In Varnish 3.0.2 I use:
sub vcl_fetch {
set beresp.http.X-Backend = beresp.backend.name;
}
Works perfectly.
Solution 2:
sub vcl_fetch {
set obj.http.X-Backend = req.backend;
}
Tested on 2.0.6 in my (non round robin) setup. It should give you something to go on.