Testing performance improvements, I added an
.htaccess file with the following directives to my
/assets folder (where I store a few images of various types).
<FilesMatch "\.(jpg|jpeg|png|gif)$"> Header set Cache-Control "public,max-age=7200" </FilesMatch>
Looking at ySlow's output, it bizarrely shows me this:
Resource Expires /assets/slide-1.jpg 2012/5/22 /assets/partners/part_01.gif 2012/5/22 /assets/partners/spacer.gif 2010/4/15
Inspecting spacer.gif's header, I note that the one gif has both my
Cache-Control: public,max-age=7200 header and an
Expires: Thu, 15 Apr 2010 20:00:00 GMT header, whereas all of the other images in the folder respect the max-age header and have no explicit expiration header.
I'm certain that there are no other filename-specific cache-control directives at play. I used to have a cache-busting in-the-past-expiration-date header in the web root, but that's since been removed, and seems not to be 'sticky' for any of the other files.
Why might this be?