mirror of
https://github.com/jetty/jetty.project.git
synced 2025-02-28 19:09:10 +00:00
381521 set Vary:Accept-Encoding header for content that might be compressed
This commit is contained in:
parent
b9a3c98055
commit
e093732d40
@ -234,9 +234,7 @@ public abstract class AbstractCompressedStream extends ServletOutputStream
|
||||
if (_response.isCommitted())
|
||||
throw new IllegalStateException();
|
||||
|
||||
setHeader("Content-Encoding", _encoding);
|
||||
setHeader("Vary","Accept-Encoding");
|
||||
|
||||
setHeader("Content-Encoding", _encoding);
|
||||
if (_response.containsHeader("Content-Encoding"))
|
||||
{
|
||||
_out=_compressedOutputStream=createStream();
|
||||
|
@ -421,6 +421,9 @@ public class DefaultServlet extends HttpServlet implements ResourceFactory
|
||||
boolean gzip=false;
|
||||
if (!included.booleanValue() && _gzip && reqRanges==null && !endsWithSlash )
|
||||
{
|
||||
// Tell caches that response may vary by accept-encoding
|
||||
response.setHeader(HttpHeaders.VARY,HttpHeaders.ACCEPT_ENCODING);
|
||||
// Should we vary this response according to accept-encoding?
|
||||
String accept=request.getHeader(HttpHeaders.ACCEPT_ENCODING);
|
||||
if (accept!=null && accept.indexOf("gzip")>=0)
|
||||
gzip=true;
|
||||
@ -497,7 +500,6 @@ public class DefaultServlet extends HttpServlet implements ResourceFactory
|
||||
if (gzip)
|
||||
{
|
||||
response.setHeader(HttpHeaders.CONTENT_ENCODING,"gzip");
|
||||
response.setHeader(HttpHeaders.VARY,HttpHeaders.ACCEPT_ENCODING);
|
||||
String mt=_servletContext.getMimeType(pathInContext);
|
||||
if (mt!=null)
|
||||
response.setContentType(mt);
|
||||
|
@ -201,7 +201,11 @@ public class GzipFilter extends UserAgentFilter
|
||||
{
|
||||
HttpServletRequest request=(HttpServletRequest)req;
|
||||
HttpServletResponse response=(HttpServletResponse)res;
|
||||
|
||||
// Inform caches that responses may vary according to Accept-Encoding
|
||||
response.setHeader("Vary","Accept-Encoding");
|
||||
|
||||
// Should we vary this response according to Accept-Encoding
|
||||
String compressionType = selectCompression(request.getHeader("accept-encoding"));
|
||||
if (compressionType!=null && !response.containsHeader("Content-Encoding") && !HttpMethods.HEAD.equalsIgnoreCase(request.getMethod()))
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user