关于我当前项目前端资源部署到了nginx,然后反向代理到gateway网关再路由到具体的 springBoot项目微服务时,上传图片文件的一些问题
首先是访问自家部署在nginx时的前端页面时,然后在上传文件时,报错,打开chrome控制栏:查询到的大概意思是错误 代表请求包太大,服务器拒绝响应;经过查询才知道原来1.3之后默认允许最大请求是2m,1.3之前是1m。
·
关于我当前项目前端资源部署到了nginx,然后反向代理到gateway网关再路由到具体的 springBoot项目微服务时,上传图片文件的一些问题
1.第一个报错
首先是访问自家部署在nginx时的前端页面时,然后在上传文件时,报错,打开chrome控制栏:
“413 Request Entity Too Large”
查询到的大概意思是
错误 代表请求包太大,服务器拒绝响应;
经过查询才知道原来nginx1.3之后默认允许最大请求是2m,nginx1.3之前是1m。
解决办法:
在nginx的配置文件nginx.conf中,添加这么一句client_max_body_size 80m; 意思是最大请求是80m。这个配置可以放到 http段 或者 server段 或者 location段。

保存,nginx -s reload,一下:
2. 第二个报错
解决掉了第一个,以为就可以上传了;第一个是浏览器报的错,第一个是java代码后台报的错,
报错大概的信息:
org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException
经过查询得知:
springBoot项目自带的tomcat对上传的文件大小有默认的限制,SpringBoot官方文档中展示:每个文件的配置最大为1Mb,单次请求的文件的总数不能大于10Mb。
解决办法
具体问题具体分析,针对我当前的项目问题
1.在当前服务的nacos配置管理中心加入以下配置
spring:
servlet:
multipart:
maxFileSize: 50MB #单个数据大小
maxRequestSize: 100MB #总数据大小
2. 在网关微服务的nacos配置管理中心加入以下配置
spring:
servlet:
multipart:
maxFileSize: 50MB #单个数据大小
maxRequestSize: 100MB #总数据大小
重启微服务跟网关,重新访问访问上传成功,此项目问题得到解决:
更多推荐
所有评论(0)