首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Springboot文件上传大小超出限制,报错MaxUploadSizeExceededException

Springboot文件上传大小超出限制,报错MaxUploadSizeExceededException

作者头像
chenchenchen
发布2021-09-06 14:16:48
发布2021-09-06 14:16:48
6.9K1
举报
文章被收录于专栏:chenchenchenchenchenchen

报错:

org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded; nested exception is java.lang.IllegalStateException: org.apache.tomcat.util.http.fileupload.FileUploadBase$SizeLimitExceededException: the request was rejected because its size (10935680) exceeds the configured maximum (10485760)

分析:

spring boot 内置tomcat默认的上传文件大小为:1M

通过设置application.yml文件属性更改文件大小限制如图:

代码语言:javascript
复制
spring:
  servlet:
    multipart:
      enabled: true #是否启用http上传处理
      max-request-size: 100MB #设置总上传的数据大小,最大请求文件的大小
      max-file-size: 20MB #设置单个文件最大长度
      file-size-threshold: 20MB #当文件达到多少时进行磁盘写入

Spring Boot 1.4.x或者之后,详见官方文档:spring boot 1.4

代码语言:javascript
复制
spring.http.multipart.maxFileSize=100Mb
spring.http.multipart.maxRequestSize=1000Mb

另外一种手动注入bean方式。在启动application类中添加@Bean或者新建Config类

代码语言:javascript
复制
@Configuration
public class UploadConfig {
 
    @Bean
    public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //单个文件最大
        factory.setMaxFileSize("20480KB"); //KB,MB
        /// 设置总上传数据总大小
        factory.setMaxRequestSize("1024000KB");
        return factory.createMultipartConfig();
    }
}

如果nginx也设置了上传文件大小,会报错误:(Request Entity Too Large)。

打开nginx主配置文件nginx.conf,一般在/usr/local/nginx/conf/nginx.conf这个位置,找到http{}段并修改以下内容:

参考:

https://blog.csdn.net/qq_33243189/article/details/89631495

https://blog.csdn.net/qq_38423105/article/details/85242992

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/03/05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档