You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficcontrol.apache.org by GitBox <gi...@apache.org> on 2020/04/21 16:52:20 UTC

[GitHub] [trafficcontrol] rob05c opened a new issue #4650: Fix Traffic Ops to serve Vary header.

rob05c opened a new issue #4650:
URL: https://github.com/apache/trafficcontrol/issues/4650


   ## I'm submitting a ...
   - [x] bug report
   - [ ] new feature / enhancement request
   - [ ] improvement request (usability, performance, tech debt, etc.)
   - [ ] other <!--(Please do not submit support requests here - see above)-->
   
   ## Traffic Control components affected ...
   - [ ] CDN in a Box
   - [ ] Documentation
   - [ ] Grove
   - [ ] Traffic Control Client
   - [ ] Traffic Monitor
   - [x] Traffic Ops
   - [ ] Traffic Ops ORT
   - [ ] Traffic Portal
   - [ ] Traffic Router
   - [ ] Traffic Stats
   - [ ] Traffic Vault
   - [ ] unknown
   
   ## Current behavior:
   Traffic Ops serves different content encodings depending on the Client `Accept-Encoding` header, namely `gzip` or not.
   
   Because of this, Traffic Ops needs to serve a `Vary: Accept-Encoding` header (even if the content isn't gzipped). 
   
   This will cause HTTP Caches to use the wrong content, at best not using gzip when they should, and at worst breaking clients. Note these may not be external caches, but also include client-side private caches, such as web browser internal caches.
   
   I consider this a major bug, as it's breaking both internal and external RFC 7231/7234 HTTP Caches. It should also be very easy to fix, should be a single line to add the Vary header in the TO gzip wrapper.
   
   ## Expected / new behavior:
   Traffic Ops returns a  `Vary: Accept-Encoding` header for all requests.
   
   ## Minimal reproduction of the problem with instructions:
   Request from Traffic Ops, observe missing `Vary` header. Request with `Accept-Encoding: gzip`, observe different content for the same endpoint with no Vary header
   
   ## Anything else:


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org