[Varnish] #529: Not RFC compliant - headers wiped on 304

Varnish varnish-bugs at projects.linpro.no
Mon Jul 27 20:46:19 CEST 2009


#529: Not RFC compliant - headers wiped on 304
--------------------+-------------------------------------------------------
 Reporter:  are     |        Owner:       
     Type:  defect  |       Status:  new  
 Priority:  high    |    Milestone:       
Component:  build   |      Version:  trunk
 Severity:  normal  |   Resolution:       
 Keywords:          |  
--------------------+-------------------------------------------------------
Comment (by kb):

 Your patch is definitely cleaner.

 10.3.5 wasn't clear /to me/ about what should be returned and what
 shouldn't.  My first thought was to by default pass everything except
 those explicitly forbidden (X- headers might be useful in a 304 case), in
 which case the 200 path was already there.  But:

 "If the conditional GET used a strong cache validator (see section
 13.3.3), the response SHOULD NOT include other entity-headers. Otherwise
 (i.e., the conditional GET used a weak validator), the response MUST NOT
 include other entity-headers; this prevents inconsistencies between cached
 entity-bodies and updated headers."

 I don't believe I was fully grokking this paragraph; if your
 interpretation is correct (which I now believe) then IMHO I think your
 patch is the better solution.

 Have you used this in "production" yet?  I'll likely incrementally roll
 this into production and see how it fares.

 Thanks!

 Ken

-- 
Ticket URL: <http://varnish.projects.linpro.no/ticket/529#comment:3>
Varnish <http://varnish.projects.linpro.no/>
The Varnish HTTP Accelerator


More information about the varnish-bugs mailing list