this is the same as 23550 except it applies to mod_disk_cache and does not occur in mod_mem_cache (so excuse the copying of the well stated report) When apache is configured as a reverse proxy with mod_disk_cache enabled (or both mod_disk_cache and mod_mem_cache but not with mod_mem_cache alone), it will cache 301 responses from the backend. Now, when we hit the memory-cached object, mod_disk_cache returns the original 301 response with a replaced HTTP status of 200. This causes clients to not follow the redirect. I will try to illustrate this: request: GET /foo HTTP/1.1 Host: www.foo.tld 1st response, before caching: HTTP/1.1 301 Moved Permanently Location: http://www.foo.tld/foo/ subsequent response, on same request: HTTP/1.1 200 OK Location: http://www.foo.tld/foo/ => Client ignores Location: header
Created attachment 16870 [details] Patch against 2.0.x branch This has been fixed in trunk and 2.2.x a while ago (r220038). Can you please give the attached patch a try? It should fix the problem for mod_disk_cache and for mod_mem_cache
Thank You, the patch you supplied fixed the issue. Are there any plans to merge it into the 2.0.x code?
Thanks for testing. I proposed it for backport to 2.0.x by adding it to the STATUS file: http://svn.apache.org/viewcvs.cgi/httpd/httpd/branches/2.0.x/STATUS?p2=%2Fhttpd%2Fhttpd%2Fbranches%2F2.0.x%2FSTATUS&p1=httpd%2Fhttpd%2Fbranches%2F2.0.x%2FSTATUS&r1=330635&r2=330634&rev=330635&view=diff&makepatch=1&diff_format=u I reopen the bug and will close it again once the patch has been backported.
fixed as r372047 http://svn.apache.org/viewvc?view=rev&revision=372047