On 5/18/07, Ruediger Pluem <[EMAIL PROTECTED]> wrote:
> @@ -477,8 +477,10 @@ > reason = "No Last-Modified, Etag, or Expires headers"; > } > else if (r->header_only) { > - /* HEAD requests */ > - reason = "HTTP HEAD request"; > + /* Forbid HEAD requests unless we have it cached already */ > + if (!cache->stale_handle) { > + reason = "HTTP HEAD request"; > + } > } > else if (!conf->store_nostore && > ap_cache_liststr(NULL, cc_out, "no-store", NULL)) {Is this correct? In the case that we have a HEAD request on a stale cached entity we would ignore any of the following conditions like Cache-Control: nostore, Cache-Control: private, an Authorization header in the request, Vary *, or r->no_cache being set and update the headers of the entity with the contents of the HEAD response. This sounds wrong to me. Why not using (r->header_only && !cache->stale_handle) instead?
Yah - I was trying to be too cute, I guess. I'll commit to trunk with it as one if statement and that should resolve this last concern... Thanks! -- justin
