diff options
author | Roman Arutyunyan <arut@nginx.com> | 2017-11-20 20:50:35 +0300 |
---|---|---|
committer | Roman Arutyunyan <arut@nginx.com> | 2017-11-20 20:50:35 +0300 |
commit | 6754a404669b527340dd74270289da6adfc6302f (patch) | |
tree | f9d63f90d689ea560f0c9660dcfad84f92fcd34e /auto | |
parent | 891908cd0cdf72fca7d4b3de4a8a6fa3602e5cf7 (diff) | |
download | nginx-6754a404669b527340dd74270289da6adfc6302f.tar.gz |
Proxy: escape explicit space in URI in default cache key.
If the flag space_in_uri is set, the URI in HTTP upstream request is escaped to
convert space to %20. However this flag is not checked while creating the
default cache key. This leads to different cache keys for requests
'/foo bar' and '/foo%20bar', while the upstream requests are identical.
Additionally, the change fixes background cache updates when the client URI
contains unescaped space. Default cache key in a subrequest is always based on
escaped URI, while the main request may not escape it. As a result, background
cache update subrequest may update a different cache entry.
Diffstat (limited to 'auto')
0 files changed, 0 insertions, 0 deletions