[Varnish] #787: Varnish incorrectly treats "Vary: *" as if "*" is just a normal header

Varnish varnish-bugs at varnish-cache.org
Fri Oct 1 12:35:44 CEST 2010

#787: Varnish incorrectly treats "Vary: *" as if "*" is just a normal header
 Reporter:  matthew  |        Type:  defect
   Status:  new      |    Priority:  normal
Milestone:           |   Component:  build 
  Version:  trunk    |    Severity:  normal
 Keywords:           |  
 RFC2616 14.44 states: "A Vary field value of "*" implies that a cache
 cannot determine from the request headers of a subsequent request whether
 this response is the appropriate representation." and "A Vary field value
 of "*" signals that unspecified parameters not limited to the request-
 headers (e.g., the network address of the client), play a role in the
 selection of the response representation."

 However, varnish caches pages sent with "Vary: *" and e.g. "Cache-Control:
 max-age=600". Looking at cache_vary.c it doesn't appear to have any
 special handling for "*" at all, so must be treating it as a normal
 header, and indeed if you send a "*: Foo" header within the request,
 varnish will use the content of that header to determine whether to serve
 cached content or not.

Ticket URL: <http://varnish-cache.org/trac/ticket/787>
Varnish <http://varnish-cache.org/>
The Varnish HTTP Accelerator

More information about the varnish-bugs mailing list