﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
30701	Allowing patch_vary_headers() caching utility to handle '*' value.	Alexander-TX	Adnan Umer	"Function ""patch_vary_headers"", simply appends new headers to list. If view code sets Vary header to asterisk, the resulting header (after applying SessionMiddleware and LocaleMiddleware) looks like this:

{{{
Vary: *, Accept-Language, Cookie
}}}

This is unnecessary and possible violates HTTP spec:

{{{
The ""Vary"" header field in a response describes what parts of a
   request message, aside from the method, Host header field, and
   request target, might influence the origin server's process for
   selecting and representing this response.  The value consists of
   either a single asterisk (""*"") or a list of header field names
   (case-insensitive).

     Vary = ""*"" / 1#field-name
}}}

(from https://tools.ietf.org/html/rfc7231#page-70)

I am using Django to implement REST API, so I'd like it to speak robust HTTP, that works with all present and future caching libraries, — even if widely used browsers and Nginx can correctly interpret current form of the header."	Cleanup/optimization	closed	Core (Cache system)	dev	Normal	fixed			Ready for checkin	1	0	0	0	1	0
