浏览器访问网页时,会下载许多小图片,虽然不大,但数量的很多,有时影响带宽和体验。

为了解决这个问题,提出了缓存的概念,即在apache设置图片的缓存时间,图片缓存到浏览器后,不在重新下载图片,提高用户体验和节约带宽。


配置步骤:

1.在 CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/%Y%m%d-access_log 86400" combined env=!p_w_picpath-request下插入以下代码


<IfModule mod_expires.c>

    ExpiresActive on         缓存开关 启用或禁用产生"Expires:"和"Cache-Control:"头的功能

    ExpiresByType p_w_picpath/gif "access plus 1 days"     缓存1天

    ExpiresByType p_w_picpath/jpeg "access plus 24 hours"  缓存24小时

    ExpiresByType p_w_picpath/png "access plus 24 hours"

    ExpiresByType text/css "now plus 2 hour"

    ExpiresByType application/x-javascript "now plus 2 hours"

    ExpiresByType application/x-shockwave-flash "now plus 2 hours"

    ExpiresDefault "now plus 0 min"   默认不缓存 设置了其作用范围内的所有文档的默认有效期的计算方法

</IfModule>


注意:now等于access 详细信息,查看官方手册http://apache.jz123.cn/mod/mod_expires.html

2.测试

curl -x192.168.11.101:80 'http://www.llzdwyp.com/static/p_w_picpath/common/forum.gif' -I

可以看到缓存的时间

Cache-Control: max-age=86400