I am trying to use the .htaccess file to "leverage browser caching" and get the users browser to cache the static assets.

Right now, I have my htaccess doing the index.php rewrite then this block of code.

<IfModule mod_expires.c>
    ExpiresActive On
    ExpiresByType image/jpg "access 1 year"
    ExpiresByType image/jpeg "access 1 year"
    ExpiresByType image/gif "access 1 year"
    ExpiresByType image/png "access 1 year"
    ExpiresByType text/css "access 1 month"
    ExpiresByType text/html "access 1 month"
    ExpiresByType application/pdf "access 1 month"
    ExpiresByType text/x-javascript "access 1 month"
    ExpiresByType application/x-shockwave-flash "access 1 month"
    ExpiresByType image/x-icon "access 1 year"
    ExpiresDefault "access 1 month"

According to tools.pingdom my site still doesn't have any browser caching. Any ideas on this and how to get it to work?

I have tested this code on a static HTML site and it works for static asset caching.

  • Are you certain that mod_expires is installed (check phpinfo in CP)? Is your Apache .conf file configured to allow you to add these rules in .htaccess -- it may be that you have to do it in the .conf itself.
    – AllInOne
    Commented Oct 6, 2016 at 13:54
  • Thanks for the tip. I went into the CP info and found it wasn't installed. Added it to the Apache server and did the restart and it works! Thank you!
    – Grant
    Commented Oct 6, 2016 at 15:57

1 Answer 1


Since my guess in the comments was correct I am adding it as an answer:

Check that mod_expires is installed in Apache (one way to quickly check in EE is to look at the phpinfo page in the control panel).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.