mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-04-11 03:31:36 +00:00
BUG/MEDIUM: cache: make sure not to cache requests with absolute-uri
If a request contains an absolute URI and gets its Host header field rewritten, or just the request's URI without touching the Host header field, it can lead to different Host and authority parts. The cache will always concatenate the Host and the path while a server behind would instead ignore the Host and use the authority found in the URI, leading to incorrect content possibly being cached. Let's simply refrain from caching absolute requests for now, which also matches what the comment at the top of the function says. Later we can improve this by having a special handling of the authority. This should be backported as far as 1.8.
This commit is contained in:
parent
5c0f859c27
commit
22c6107dba
@ -1082,8 +1082,8 @@ int sha1_hosturi(struct stream *s)
|
||||
chunk_memcat(trash, ctx.value.ptr, ctx.value.len);
|
||||
|
||||
sl = http_get_stline(htx);
|
||||
path = http_get_path(htx_sl_req_uri(sl));
|
||||
if (!path.ptr)
|
||||
path = htx_sl_req_uri(sl); // whole uri
|
||||
if (!path.len || *path.ptr != '/')
|
||||
return 0;
|
||||
chunk_memcat(trash, path.ptr, path.len);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user