* Use the query string stored in r->parsed_uri.query instead of r->args
as r->args could have been changed (e.g. via mod_rewrite) after the quick
handler hook. This causes resources to be stored under a key, where they
cannot be fetched again in the quick handler.
PR: 40805
Submitted by: rpluem
Reviewed by: rpluem, jim, sctemme
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@535903
13f79535-47bb-0310-9956-
ffa450edef68
-*- coding: utf-8 -*-
Changes with Apache 2.2.5
+ *) mod_cache: Correctly cache objects whose URL query string has been
+ modified by mod_rewrite. PR 40805. [Ruediger Pluem]
+
*) HTTP proxy ProxyErrorOverride: Leave 1xx and 3xx responses alone. Only
processing of error responses (4xx, 5xx) will be altered. PR 39245.
[Jeff Trawick, Bart van der Schans <schans hippo.nl>]
/* Key format is a URI */
*key = apr_pstrcat(p, scheme, "://", hostname, port_str,
- r->parsed_uri.path, "?", r->args, NULL);
+ r->parsed_uri.path, "?", r->parsed_uri.query, NULL);
return APR_SUCCESS;
}
/* if a Expires header is in the past, don't cache it */
reason = "Expires header already expired, not cacheable";
}
- else if (r->args && exps == NULL) {
+ else if (r->parsed_uri.query && exps == NULL) {
/* if query string present but no expiration time, don't cache it
* (RFC 2616/13.9)
*/