接口请求,上传文件报500异常

异常响应

{
    "timestamp": "2024-01-29T06:39:28.820+00:00",
    "status": 500,
    "error": "Internal Server Error",
    "path": "/test/upload"
}

服务端日志

服务端无日志打印

分析方向

nginx配置

nginx配置文件nginx.conf中配置

client_body_buffer_size 10m;  #缓存区大小
client_max_body_size 100m;    #上传文件的最大值
client_body_temp_path temp/;  #临时文件存放路径。只有当上传的请求体超出缓存区大小时,才会写到临时文件中

并给临时存放文件的目录设置权限:chmod 775 temp/

编辑完nginx后,重启命令

cd sbin/
 
./nginx -s reload

springboot项目配置

springboot默认文件大小的限制是1MB,超过1MB会出现这个错误:org.springframework.web.multipart.MultipartException。

设置application.yml文件属性,更改文件大小限制

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

你可能感兴趣的:(异常分析,spring,boot,java)