需求:正式环境部署项目,考虑项目中业务使用图片多,用户端加载图片慢、后端服务器压力大问题,使用nginx代理图片的获取功能。以实现图片快速访问、节省后端服务资源目的。(前提:所有图片访问路径都是固定的)
- 取消从后端服务获取图片功能,注销以下代码:
@configuration
@requiredargsconstructor
public class webmvcconfig implements webmvcconfigurer {
/* private final uploadconfig uploadconfig;
@override
public void addresourcehandlers(resourcehandlerregistry registry) {
// 配置上传文件的静态资源映射
// 支持 /upload/** 和 /api/upload/** 两种路径
registry.addresourcehandler("/upload/**", "/api/upload/**")
.addresourcelocations("file:" + uploadconfig.getpath() + "/");
}*/
}在nginx中配置图片访问代理:
# 1. 优先匹配图片请求路径
location /api/upload/images/ { #图片访问地址中固定的路径
#图片实际存在服务器的路径放的
alias /www/javapro/cultural/upload/images/;
# 3. 性能优化配置(强烈建议加上)
sendfile on; # 开启零拷贝传输,提升大文件传输效率
tcp_nopush on; # 配合 sendfile 使用,优化数据包发送
expires 30d; # 设置浏览器缓存 30 天,减少重复请求
access_log off; # 关闭图片访问日志,减轻磁盘 i/o 压力
}
//后端服务的代理配置
location /api/ {
.......
}到此这篇关于nginx配置图片访问代理的实现的文章就介绍到这了,更多相关nginx 图片访问代理内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论