Be aware of the potential downside to setting very long "expires" headers. There are sometimes caches deep in the darknesses of the Internet that obey these, which can cause havoc if you redesign and reuse any filenames (for instance logo.png).
We've had situations where a site appeared broken to a subset of end users for weeks because we tweaked the look and feel, and the new logo (different size and look) was named logo.png just like the old logo...which had an "expires" header of about one month.
So even after clearing all local and server-side caches, some users were getting our new HTML with our old logo horribly jammed into it--dutifully being served from some unknown cache somewhere until it hit the "expires" time.
Comments
Be aware of the potential downside to setting very long "expires" headers. There are sometimes caches deep in the darknesses of the Internet that obey these, which can cause havoc if you redesign and reuse any filenames (for instance logo.png).
We've had situations where a site appeared broken to a subset of end users for weeks because we tweaked the look and feel, and the new logo (different size and look) was named logo.png just like the old logo...which had an "expires" header of about one month.
So even after clearing all local and server-side caches, some users were getting our new HTML with our old logo horribly jammed into it--dutifully being served from some unknown cache somewhere until it hit the "expires" time.