For a small intranet site, I have a dynamic (includes AJAX) page that is being cached incorrectly by Firefox. Is there a way to disable browser caching for a single page?
Here's the setup I'm using:
- Apache under XAMPP, running on a Windows server
- PHP
Clarification
The content that I'm primarily concerned about is page text and the default options in some <select>
s. So I can't just add random numbers to the end of some image URLs, for example.
Update:
I followed the suggestions I've gotten so far:
- I'm sending nocache headers (see below)
I'm including a timestamp URL parameter and redirecting to a new one if the page is reloaded after 2 seconds, like this:
$timestamp = $_GET['timestamp']; if ((time()-$timestamp) > 2) { header('Location:/intranet/admin/manage_skus.php?timestamp='.time()); }
Now Firebug shows that the headers specify no cache, but the problem persists. Here are the response headers for the page:
Date Fri, 25 Sep 2009 20:41:43 GMT
Server Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i mod_autoindex_color PHP/5.2.8
X-Powered-By PHP/5.2.8
Expires Mon, 20 Dec 1998 01:00:00 GMT
Last-Modified Fri, 25 Sep 2009 20:41:43 GMT
Cache-Control no-cache, must-revalidate
Pragma no-cache
Keep-Alive timeout=5, max=100
Connection Keep-Alive
Transfer-Encoding chunked
Content-Type text/html