目的:把从其他主机访问的前端静态资源,缓存到本地,降低网络通讯,提高性能。
bash
http {
......
# 2024-03-08
upstream h5_server{
server 127.0.0.1:80;
}
# 2024-03-08 nginx增加缓存静态资源到本机
proxy_buffer_size 16k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 96k;
proxy_temp_file_write_size 96k;
# 临时缓存路径,目前看没啥用
proxy_temp_path /opt/tmp/ui_dir;
# 定义缓存的存储路径。
proxy_cache_path /opt/tmp/cache levels=1:2 keys_zone=cache_one:100m inactive=1d max_size=10g;
server {
......
#要缓存文件的后缀,可以在以下设置。
location ~ .*\.(gif|jpg|png|css|js)$ {
proxy_pass http://h5_server; # 前端服务地址(ip:port)
proxy_redirect off;
proxy_set_header Host $host;
proxy_cache cache_one;
proxy_cache_valid 200 302 2h;
proxy_cache_valid 301 1d;
proxy_cache_valid any 5m;
expires 2h;
add_header wall "hey! cache by nginx!";
}
}
配置后,访问前端,可以看到缓存了文件到目录中。