Caddy设置静态文件缓存
在使用 Google PageSpeed Insights 测试本站,诊断结果中说静态文件没有设置缓存,尤其是woff2字体下载耗时长,影响加载速度,由于本站使用Caddy2服务器,要添加静态文件缓存,配置文件语法和Nginx略有差异。
Caddy2 设置静态文件缓存时间示例:
mephisto.cc {
encode gzip zstd
root * /data/mephisto.cc/public
file_server
@static {
file
path *.ico *.css *.js *.gif *.jpg *.jpeg *.png *.svg *.woff *.woff2 *.webp
}
header @static Cache-Control max-age=604800
reverse_proxy /xray 127.0.0.1:2001 {
transport http {
versions h2c
}
}
handle_errors {
rewrite * /{http.error.status_code}.html
file_server
}
log {
output file /var/log/caddy/mephisto.cc.log {
roll_size 100mb
roll_keep 10
roll_keep_for 7d
}
}
}
@static 官方文档叫Named matchers,下面这一段的意思为,请求路径中匹配到下列类型的静态类型文件,通过控制返回头,设置缓存存储的最大周期,超过3600x24x7=604800秒,缓存被认为过期。与Expires相反,时间是相对于请求的时间。
@static {
file
path *.ico *.css *.js *.gif *.jpg *.jpeg *.png *.svg *.woff *.woff2 *.webp
}
header @static Cache-Control max-age=604800
header的其它控制选项,可按照需要自行添加。
最后修改于: Monday, August 28, 2023
版权申明:
- 未标注来源的内容全部为原创,未经授权请勿转载(因转载后排版往往错乱、内容不可控、无法持续更新等);
- 非营利为目的,演绎本博客任何内容,请以'原文出处'或者'参考链接'等方式给出本站相关网页地址(方便读者)。