mod_cache: Revalidate cache entities which have Cache-Control: no-cache
set in their response headers. PR 44511 [Ruediger Pluem]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@637167
13f79535-47bb-0310-9956-
ffa450edef68
-*- coding: utf-8 -*-
Changes with Apache 2.2.9
+
+ *) mod_cache: Revalidate cache entities which have Cache-Control: no-cache
+ set in their response headers. PR 44511 [Ruediger Pluem]
*) mod_rewrite: Check all files used by DBM maps for freshness, mod_rewrite
didn't pick up on updated sdbm maps due to this.
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
[ start all new proposals below, under PATCHES PROPOSED. ]
- * mod_cache: Revalidate cache entities which have Cache-Control: no-cache
- set in their response headers. PR44511
- Trunk version of patch:
- http://svn.apache.org/viewcvs.cgi?rev=632749&view=rev
- Backport version for 2.2.x of patch:
- Trunk version of patch works
- +1: rpluem, jim, covener
-
PATCHES PROPOSED TO BACKPORT FROM TRUNK:
[ New proposals should be added at the end of the list ]
cc_cresp = apr_table_get(h->resp_hdrs, "Cache-Control");
expstr = apr_table_get(h->resp_hdrs, "Expires");
+ if (ap_cache_liststr(NULL, cc_cresp, "no-cache", NULL)) {
+ /*
+ * The cached entity contained Cache-Control: no-cache, so treat as
+ * stale causing revalidation
+ */
+ return 0;
+ }
+
if ((agestr = apr_table_get(h->resp_hdrs, "Age"))) {
age_c = apr_atoi64(agestr);
}