I have some plugin code that does a redirect. It works as expected with Internet Explorer which looks like the following:
GET /mediawiki/index.php/SomethingThatCausesARedirect 302 Found: Location: /mediawiki/index.php/Foo GET /mediawiki/index.php/Foo 200 OK <Now click on 'Main Page' link> GET /mediawiki/index.php/Main_Page 304 Unmodified <'Main Page' is shown successfully>
But if Firefox 1.5 on Linux is used, sometimes the browser get's stuck in this mode where it always re-retrieves the redirected page. The capture looks like:
GET /mediawiki/index.php/SomethingThatCausesARedirect 302 Found: Location: /mediawiki/index.php/Foo GET /mediawiki/index.php/Foo 200 OK <Now click on 'Main Page' link> GET /mediawiki/index.php/Main_Page 304 Unmodified GET /mediawiki/index.php/Foo 200 OK <Page 'Foo' is shown which is not correct>
All responses have 'Cache-Control: private, must-revalidate, max-age=0. The server is Apache on Ubuntu Server and there's no proxy or cache in between.
Here the funny part. If I click on any other link instead of 'Main Page' (e.g. 'Comminity portal') the problem does not occur - the second time I click on 'Community portal' I get the right page and not 'Foo'.
Has anyone seen this before?
How can I stop FF from re-retriving 'Foo' ever time I click on 'Main Page'?
Mike
mediawiki-l@lists.wikimedia.org