otherwise mod_cache will always try to cache the URL. This bug
might lead to numerous rename() errors on win32 if the URL was
previously cached.
+1: minfrin, rpluem, jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@463496
13f79535-47bb-0310-9956-
ffa450edef68
-*- coding: utf-8 -*-
Changes with Apache 2.2.4
+ *) mod_cache: Don't cache requests with a expires date in the past;
+ otherwise mod_cache will always try to cache the URL. This bug
+ might lead to numerous rename() errors on win32 if the URL was
+ previously cached. [Davi Arnaut <davi haxent.com.br>]
+
*) core: Deal with the widespread use of apr_status_t return values
as HTTP status codes, as documented in PR#31759 (a bug shared by
the default handler, mod_cgi, mod_cgid, mod_proxy, and probably
/* if a broken Expires header is present, don't cache it */
reason = apr_pstrcat(p, "Broken expires header: ", exps, NULL);
}
+ else if (exp != APR_DATE_BAD && exp < r->request_time)
+ {
+ /* 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) {
/* if query string present but no expiration time, don't cache it
* (RFC 2616/13.9)