I’m trying to figure out a caching issue. We are currently using a CMS with built in caching. We can then delete the cached copy via the control panel and the uncached page will be served until we cache that page again.
Long story short, we know that a either a proxy server or load balancer was put in place, and we think that it is caching the pages as well as the CMS. Our specific issue is that when we un-cache the page in the CMS, it’s taking 15 minutes (timed) to show up un-cached (even after using different browser, clearing the browser cache, etc.), when prior to the network appliance being introduced, the un-cached page would show up immediately. Unfortunately we don’t have any historical response headers saved anywhere.
When we believe that the page is being cached by the proxy/lb, the Response header is returning:
HTTP/1.1 304 Not Modified Server: Apache/2.0.59 (Unix) JRun/4.0 mod_ssl/2.0.59 OpenSSL/0.9.8k PHP/5.2.6 Last-Modified: Fri, 03 Aug 2012 13:29:12 GMT Etag: "92fe-18f7-837ada00" Accept-Ranges: bytes Keep-Alive: timeout=5, max=100 Content-Type: text/html Content-Encoding: gzip Connection: Keep-Alive Date: Mon, 06 Aug 2012 13:49:40 GMT X-Cntnt-Length: 6391
When it’s not being cached by the CMS, the response headers are:
HTTP/1.0 200 OK Date: Mon, 06 Aug 2012 14:03:59 GMT Server: Apache/2.0.59 (Unix) JRun/4.0 mod_ssl/2.0.59 OpenSSL/0.9.8k PHP/5.2.6 X-Powered-By: PHP/5.2.6 Set-Cookie: blah-blah-blah Expires: Mon, 26 Jul 1997 05:00:00 GMT Last-Modified: Mon, 06 Aug 2012 14:04:04 GMT Pragma: no-cache Connection: close Content-Type: text/html
I guess my question is, can Apache2 be configured to return both HTTP 1.0 and 1.1 ? I know the Etag indicates a cached page, and believe it’s not available in HTTP/1.0.
Thanks for any insights.
[I originally asked this over on stackoverflow, and it was suggested I ask over here.]
Your uncached response returns:
This means that it’s a page which has been generated by PHP, and this means that your PHP application may have also generated the
HTTP/1.0 200 OK. If this is the case, a search for
HTTP/1.0 through its source code may reveal the offending code.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.