C2 General > -----Ursprüngliche Nachricht----- > Von: Stefan Eissing <stefan.eiss...@greenbytes.de> > Gesendet: Mittwoch, 10. April 2019 12:10 > An: dev@httpd.apache.org > Betreff: Re: keep-alive and vary in 304 responses > > > > Am 09.04.2019 um 18:48 schrieb Roy T. Fielding <field...@gbiv.com>: > > > >> > >> 2. Validation responses lose the "Vary" header from the unconditional > response. This happens on resources where mod_deflate is active. > >> The 200 response without any "if-modified-since" etc. carries "Vary: > Accept-Encoding" as it should. > >> The 304 response with "if-modified-since" has no "Vary" header. > >> The code in mod_deflate looks as if it tries to add it in any case, > where is it lost? > > > > That's one of many bugs related to design problems with mod_deflate. > Basically, > > it chooses to insert itself into the response handling after the other > checks are done, > > which means a 304 doesn't even know yet whether the response would use > gzip. > > The solution (which I never found time to implement) is to replace > dynamic gzip with > > a transfer encoding generator, and/or to rewrite the mod_deflate CE > encoder to act more > > like mod_cache. > > Thinking out loud here: > > Acting more like mod_cache would then split the deflate output filter > into a resource and a protocol type one, I assume? IMHO the "secret" of mod_cache is that its filter is also inserted via the insert_error_filter hook and not just via the insert_filter hook (like mod_expires and mod_header do). With mod_deflate this will be more complex as mod_deflate does not add itself. It is either added by the core via SetOuputFilter or via mod_filter and they all only consider insert_filter and not insert_error_filter. We probably need a possibility to tell filters to be added in insert_error_filter. Regards Rüdiger
AW: keep-alive and vary in 304 responses
Plüm , Rüdiger , Vodafone Group Wed, 10 Apr 2019 03:59:00 -0700
- Re: keep-alive and vary... Stefan Eissing
- Re: keep-alive and vary... Yann Ylavic
- AW: keep-alive and... Plüm , Rüdiger , Vodafone Group
- Re: keep-alive... Stefan Eissing
- AW: keep-alive... Plüm , Rüdiger , Vodafone Group
- Re: AW: keep-a... Julian Reschke
- Re: keep-alive... Stefan Eissing
- Re: keep-alive... Julian Reschke
- Re: keep-alive... Stefan Eissing
- Re: keep-alive and vary in ... Julian Reschke
- AW: keep-alive and vary in 304 ... Plüm , Rüdiger , Vodafone Group
- Re: keep-alive and vary in ... Stefan Eissing
- Re: keep-alive and vary in 304 ... Roy T. Fielding
- HTTP Protocol workshop notes William A Rowe Jr
- Re: keep-alive and vary in 304 responses Mario Brandt
- Re: keep-alive and vary in 304 resp... Julian Reschke
- Re: keep-alive and vary in 304 ... Yann Ylavic
- Re: keep-alive and vary in 304 resp... Stefan Eissing