.htaccess缓存静态内容(除非修改)?

时间:2011-09-25 01:53:21

标签: .htaccess browser-cache

想知道这可能在.htaccess吗?

我目前正在通过PHP缓存.js,.css和所有图像文件(仅当文件未通过检查filemtime()修改时才提供缓存。)

然而有人建议可以通过.htaccess并且更快,所以希望也许有人可以放弃一些亮点......我环顾四周,发现了各种片段,但没有一个覆盖我所追求的内容。

1 个答案:

答案 0 :(得分:6)

如果你的apache服务器上安装了mod_expires,你可以在.htaccess文件中输入这样的内容。这个例子是面向PHP的(实际上是从Drupal 7 .htaccess文件中获取的)但应该是一个很好的起点。

FileETag MTime Size
<IfModule mod_expires.c>
  # Enable expirations.
  ExpiresActive On

  # Cache all files for 2 weeks after access (A).
  ExpiresDefault A1209600

  <FilesMatch \.php$>
    # Do not allow PHP scripts to be cached unless they explicitly send cache
    # headers themselves. Otherwise all scripts would have to overwrite the
    # headers set by mod_expires if they want another caching behavior.
    ExpiresActive Off
  </FilesMatch>
</IfModule>