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

Reply via email to