Author: markt
Date: Wed Sep 17 12:26:22 2008
New Revision: 696408
URL: http://svn.apache.org/viewvc?rev=696408&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=45419
Set the Accept-Ranges header on content served from the DefaultServlet. This
can be disabled via configuration if required.
Modified:
tomcat/trunk/conf/web.xml
tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java
tomcat/trunk/webapps/docs/default-servlet.xml
Modified: tomcat/trunk/conf/web.xml
URL:
http://svn.apache.org/viewvc/tomcat/trunk/conf/web.xml?rev=696408&r1=696407&r2=696408&view=diff
==============================================================================
--- tomcat/trunk/conf/web.xml (original)
+++ tomcat/trunk/conf/web.xml Wed Sep 17 12:26:22 2008
@@ -70,6 +70,9 @@
<!-- which sendfile will be used. Use a negative -->
<!-- value to always disable sendfile. [48] -->
<!-- -->
+ <!-- useAcceptRanges Should the Accept-Ranges header be included -->
+ <!-- in responses where appropriate? [true] -->
+ <!-- -->
<!-- For directory listing customization. Checks localXsltFile, then -->
<!-- globalXsltFile, then defaults to original behavior. -->
<!-- -->
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=696408&r1=696407&r2=696408&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java
(original)
+++ tomcat/trunk/java/org/apache/catalina/servlets/DefaultServlet.java Wed Sep
17 12:26:22 2008
@@ -154,7 +154,11 @@
*/
protected int sendfileSize = 48 * 1024;
-
+ /**
+ * Should the Accept-Ranges: bytes header be send with static resources?
+ */
+ protected boolean useAcceptRanges = true;
+
/**
* Full range marker.
*/
@@ -241,6 +245,9 @@
localXsltFile = getServletConfig().getInitParameter("localXsltFile");
readmeFile = getServletConfig().getInitParameter("readmeFile");
+ if (getServletConfig().getInitParameter("useAcceptRanges") != null)
+ useAcceptRanges =
Boolean.parseBoolean(getServletConfig().getInitParameter("useAcceptRanges"));
+
// Sanity check on the specified buffer sizes
if (input < 256)
input = 256;
@@ -717,9 +724,12 @@
contentType = "text/html;charset=UTF-8";
} else {
+ if (useAcceptRanges) {
+ // Accept ranges header
+ response.setHeader("Accept-Ranges", "bytes");
+ }
// Parse range specifier
-
ranges = parseRange(request, response, cacheEntry.attributes);
// ETag header
Modified: tomcat/trunk/webapps/docs/default-servlet.xml
URL:
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/default-servlet.xml?rev=696408&r1=696407&r2=696408&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/default-servlet.xml (original)
+++ tomcat/trunk/webapps/docs/default-servlet.xml Wed Sep 17 12:26:22 2008
@@ -179,6 +179,13 @@
to always disable sendfile. [48]
</td>
</tr>
+ <tr>
+ <th valign='top'>useAcceptRanges</th>
+ <td valign='top'>
+ If true, the Accept-Ranges header will be set when appropriate for the
+ response. [true]
+ </td>
+ </tr>
</table>
</section>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]