17

我正在尝试配置我的 .htaccess 文件来设置缓存时间。尝试了所有可能的配置,但没有任何效果!

这是我的 HTML 中写的:

 <meta http-equiv="Cache-Control" content="max-age=2592000, public" />
 <!--        
 <meta http-equiv="expires" content="mon, 24 sep 2012 14:30:00 GMT">
  -->

这就是写在我的 .htaccess 文件中的内容:

ExpiresActive On
ExpiresDefault A3600

但是,当我在 firefox 中刷新包含缓存清除 (ctrl+F5) 时,我的 firebug NET 面板说缓存在我访问文件的同一秒过期(而不是将来,因为我希望它是)。

我究竟做错了什么??

谢谢

4

1 回答 1

46

我建议你使用 headers mod。您可以使用以下命令激活它(如果禁用):

a2enmod 标头

这是一个有效的简单代码示例:

<IfModule mod_headers.c>
    # WEEK
    <FilesMatch "\.(jpg|jpeg|png|gif|swf)$">
        Header set Cache-Control "max-age=604800, public"
    </FilesMatch>

    # WEEK
    <FilesMatch "\.(js|css|swf)$">
        Header set Cache-Control "max-age=604800"
    </FilesMatch>
</IfModule>

max-age 是以秒为单位的缓存时间。

于 2012-09-19T15:40:22.540 回答