httpd-bugs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject DO NOT REPLY [Bug 45341] Apache reverse-proxy returns 304 on non-conditional GET request
Date Sun, 13 Jul 2008 19:17:34 GMT

--- Comment #4 from Ruediger Pluem <>  2008-07-13 12:17:34 PST ---
(In reply to comment #2)
> I'm also experiencing this bug, using Apache/2.2.8  with mod_cache and
> mod_disk_cache over an AJP reverse proxy of an Apache Wicket application;
> Wicket does not set Expire headers when responding with 304 (which works fine
> without the cache on). Here is my TCP trace:

This is somehow an error of Wicket. Why?
Because requests with query strings are only cacheable if the response contains
an expires date. So I can only think of the following situation in your case:

1. Request with query string is not cached
2. Response is 200 and contains expire date => Request/response is cached.
3. Subsequent request within the expiration time are served without problems
   as mod_cache does not sent conditional requests to the backend.
4. After the expiration date if passed mod_cache sents a *conditional* request
   the backend even if the original request was unconditional.
5. The response is 304 *without* expiration date, which tells the cache that
   cached response is unusable and needs to be ejected.

This is an error of wicket as a 304 response should contain all headers that
are relevant for caching.

The cache is in a problematic situation here:

1. Sending a 304 is wrong, because the original request was unconditional.
2. Serving the contents from the cache is not allowed since the backend told
   cache that the current contents of the cache is invalid without delivering
   new content.

Configure bugmail:
------- You are receiving this mail because: -------
You are the assignee for the bug.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message