apache模块mod_expires配置

这个模块控制服务器应答时的Expires头内容和Cache-Control头的max-age指令。有效期(expiration date)可以设置为相对于源文件的最后修改时刻或者客户端的访问时刻。

这些HTTP头向客户端表明了文档的有效性和持久性。如果有缓存,文档就可以从缓存(除已经过期)而不是从服务器读取。接着,客户端考察缓存中的副本,看看是否过期或者失效,以决定是否必须从服务器获得更新。

mod_expires 是 apache 众多模块中配置比较简单的一个,它一共只有三条指令:

ExpiresActive 指令:打开或关闭产生”Expires:”和”Cache-Control:”头的功能。
ExpiresByType 指令:指定MIME类型的文档(例如:text/html)的过期时间。
ExpiresDefault 指令:默认所有文档的过期时间。

示例:

# 启用有效期控制
ExpiresActive On
# GIF有效期为1个月
ExpiresByType image/gif A2592000
# HTML文档的有效期是最后修改时刻后的一星期
ExpiresByType text/html M604800
# 默认所有的文档有效期为4周
ExpiresDefault "access plus 4 weeks"

详情可参考:
http://lamp.linux.gov.cn/Apache/ApacheMenu/mod/mod_expires.html
官方Apache 2.2 手册:http://httpd.apache.org/docs/2.2/en/mod/mod_expires.html

以下是我的配置信息:

LoadModule expires_module modules/mod_expires.so
<IfModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault A86400 
  ExpiresByType application/pdf A604800
  ExpiresByType application/x-javascript A2592000
  ExpiresByType application/x-shockwave-flash A604800
  ExpiresByType image/jpeg A604800
  ExpiresByType image/gif A604800
  ExpiresByType image/png A604800
  ExpiresByType image/x-icon A2592000
  ExpiresByType text/css A2592000
  ExpiresByType text/html A300
  ExpiresByType text/plain A604800
  ExpiresByType video/x-flv A604800
</IfModule>