On 09.06.2011 18:22, Christopher Schultz wrote: > Jesse, > > On 6/9/2011 8:34 AM, Jesse Farinacci wrote: >> I just wrote a >> quick javax.servlet.Filter. It sanity checks: 1) no ?gzip=false >> parameter (a la Tomcat's compression filter), and 2) Accept-Encoding: >> {,x-}gzip in any of the headers, and 3) that "" new >> File(request.getContextPath().substring(1) + >> DEFAULT_GZIP_FILE_EXTENSION) "" exists. > > You might want to check out how Apache httpd does the same type of > thing. It uses the "Vary" response header which may be a bit more polite.
Vary is about something else, but also important. It tels intermediate proxies which are located between the browser and Tomcat, that the content they see does not only depend on the URL, but also on the value of additional headers. Without vary, a compressed content would be put in the intermediate cache and then served later to all other browsers using the same cache and asking for the same content - even if they don't support compression. Usually the User-Agent is added to Vary, but that kind of blows up the cache, because it will then cache the content once pr User-Agent string - and there are gazillions of those. Something else to consider: make sure you send the correct Content-Type header back, even after adding the gzip file extension. Regards, Rainer --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org