If you remove the Last-Modified
and ETag
header, you will totally eliminate If-Modified-Since
and If-None-Match
requests and their 304 Not Modified
Responses, so a file will stay cached without checking for updates until the Expires header indicates new content is available!
Please don't turn off ETags and Last-Modified headers for your .html files, leave one of them ON. (I use Last-Modified for .html).
This goes in your root .htaccess file but if you have access to httpd.conf
that is better.
This code uses the FilesMatch directive and the Header directive to remove all Last-Modified
Headers from being sent.
Header unset Last-Modified
By removing both the ETag header and the Last-Modified headers from your static files (images, javascript, css) browsers and caches will not be able to validate the cached version of the file vs. the real version. By also including a Cache-Control
header and Expires
header, you can specify that certain files be cached for a certain period of time, and you magically (this is a really unique trick I promise) eliminate any validation requests!!