Author: markt Date: Mon Aug 4 17:22:01 2014 New Revision: 1615697 URL: http://svn.apache.org/r1615697 Log: When the gzip option is enabled for the DefaultServlet ensure that a suitable Vary header is returned for resources that might be returned directly in compressed form.
Modified: tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java?rev=1615697&r1=1615696&r2=1615697&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java (original) +++ tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java Mon Aug 4 17:22:01 2014 @@ -799,16 +799,15 @@ public class DefaultServlet extends Http // Serve a gzipped version of the file if present boolean usingGzippedVersion = false; - if (gzip && - resource.isFile() && - !included && - !path.endsWith(".gz") && - checkIfGzip(request)) { + if (gzip && resource.isFile() && !path.endsWith(".gz")) { WebResource gzipResource = resources.getResource(path + ".gz"); if (gzipResource.exists() && gzipResource.isFile()) { - response.addHeader("Content-Encoding", "gzip"); - resource = gzipResource; - usingGzippedVersion = true; + response.addHeader("Vary", "accept-encoding"); + if (!included && checkIfGzip(request)) { + response.addHeader("Content-Encoding", "gzip"); + resource = gzipResource; + usingGzippedVersion = true; + } } } Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1615697&r1=1615696&r2=1615697&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Mon Aug 4 17:22:01 2014 @@ -80,6 +80,12 @@ and it need not be fatal when the Realm starts. Based on a patch by Cédric Couralet. (markt) </fix> + <fix> + When the <code>gzip</code> option is enabled for the + <code>DefaultServlet</code> ensure that a suitable <code>Vary</code> + header is returned for resources that might be returned directly in + compressed form. + </fix> </changelog> </subsection> <subsection name="Coyote"> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org