在除.php文件外的所有文件的头文件中,将在1个月内过期


Expires in 1 month header on all files except .php files

为了加快我的网站速度,我已经阅读了关于Expires标头的内容,以及如何在Apache中实现它,以及如何仅对某些文件类型这样做。但是,我想为.php文件(网页)之外的所有文件设置一个月的到期日。

那么我该如何使用.htaccess呢?我有一个PHP脚本,它使用filemtime在编辑CSS、JS文件时更改文件名,以便重新下载(例如,如果文件在Unix时间的xxxxxxx更改,则在请求时会将文件名更改为/resource.css?recache=xxxxxxxx)。所以这一切都得到了解决。由于图像等不会经常更改,我希望所有图像都缓存一个月。

此外,浏览器对Expires标头的支持是什么?

使用Apache配置文件中的mod_expires。例如:

# Turn on Expires and set default to 0
ExpiresActive On
ExpiresDefault A0
# Set up caching on media files for 1 month
<filesMatch "'.(flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav|gif|jpg|jpeg|png|swf)$">
ExpiresDefault A2592000
Header append Cache-Control "public"
</filesMatch>

您可以在这里阅读更多