springBoot前后端分离项目上传文件限制大小需注意的3点

springBoot前后端分离项目+nginx代理上传文件,限制文件大小需注意的点。

比如:Web上传文件时,限制文件大小,页面做了文件大小限制,其次还需修改nginx和spring项目配置。
常见问题,页面文件上传大小>nginx配置/spring Tomcat配置,这个时候就会报错,首先报错413错误,其次才会系统报错。原因请求首先会到nginx转发,文件大小校验就报错了。

1、页面限制文件大小。

获取文件属性,校验文件大小,不通过页面直接返回相关信息,不经过后台接口。例如element-ui:

const isLt2M = file.size / 1024 / 1024 < 2;
 if (!isLt2M) {
     this.$message.error('上传头像图片大小不能超过 2MB!');
 }

2、nginx配置中文件大小的修改

修改后需重启nginx。

//默认为1M,若超过所设定的大小,返回413错误
//根据需求设置大小
client_max_body_size 50M;

3、spring配置文件中Tomcat multipart值限制

如上传超过该值会报错提示:org.apache.tomcat.util.http.fileupload.impl.FileSizeLimitExceededException: The field file exceeds its maximum permitted size of *****bytes。

spring:
  servlet:
    # 文件上传相关配置项
    multipart:
      max-file-size: 10MB # 单个文件大小
      max-request-size: 100MB # 设置总上传的文件大小

项目已上线,但是需要修改spirng jar包中配置文件小技巧:
比如上一版本已上线,本地代码有目前版本逻辑,改动涉及上一版本,需要git上重启获取之前版本重新修改打包,操作太麻烦。
此时可以将运行的jar包拷贝出来直接压缩工具打开,BOOT-INF\classes文件夹下就是项目配置文件信息,拷贝出来,然后修改替换即可。最后重启项目。

你可能感兴趣的:(springboot,spring,boot,java,tomcat)