Depois de falar com Reza no canal de IRC do Varnish, parece que eu tinha um pedaço de código que estava quebrado e inseguro. O pedaço foi:
if (req.http.Cache-Control ~ "(?i)no-cache") {
# http://varnish.projects.linpro.no/wiki/VCLExampleEnableForceRefresh
# Ignore requests via proxy caches and badly behaved crawlers
# like msnbot that send no-cache with every request.
if (! (req.http.Via || req.http.User-Agent ~ "(?i)bot" || req.http.X-Purge)) {
#set req.hash_always_miss = true; # Doesn't seems to refresh the object in the cache
return(purge); # Couple this with restart in vcl_purge and X-Purge header to avoid loops
}
}
Após a remoção, tudo está funcionando conforme o esperado. Obrigado Reza