Travis Derouin wrote:
We seem to have an issue with users editing on our
site with Firefox
(reproducible on a Mac, not on Windows)
After posting the edit, the server responds with a redirect:
HTTP/1.x 302 Moved Temporarily
FF doesn't seem to reissue a request for this article though, and
shows the old copy of it without going back to the server. I've double
checked this using LiveHTTPHeaders.
This seems odd, does anyone have any idea why this would happen? It
also seems dependent on time, if the users makes submits an edit
within 30 seconds of loading the article, they get the stale version,
but if they wait longer, they are more likely to get the fresh
version. Other browsers do get the fresh copy if loaded separately
with the URL.
The normal 200 response for the article includes the cache information:
Cache-Control: s-maxage=86400, must-revalidate, max-age=0
but the 302 redirect doesn't include any info about must-revalidate.
Could this be an issue?
No, the redirect does not affect caching for its destination. The problem
is most likely a change to the response headers for the article itself.
For instance, is there an "Expires" header?
Reading the section on caching in RFC 2616 may be helpful for you.
This didn't seem to be an issue earlier than
today, we did upgrade to
PHP 5.2.4/eaccelerator 0.9.5.2, I'm not sure if this is related.
I would recommend downgrading it to see if that is the problem.
-- Tim Starling