文件上传java报Processing of multipart/form-data request failed. java.io.EOFException: Unexpected EOF read

可能导致的原因:

1.spring boot文件上传大小限制小于上传文件大小

在application.yml配置

spring:
  servlet:
    multipart:  
      enabled: true
      max-file-size: 999MB
      max-request-size: 999MB

2.nginx文件上传大小限制小于上传文件大小/反向代理服务器响应超时/nginx响应超时

在nginx.conf配置(http,server,localhost)模块处均可设置

proxy_max_temp_file_size 1024m;
client_header_buffer_size 24k;
client_body_buffer_size 24k;
client_max_body_size 200m;
client_body_timeout 3600s;
client_body_temp_path /temp;
resolver_timeout 3600s;

3.配置了ssl证书+域名导致怎么设置都无法上传超过4m的文件

我就是在这里搞得很懵很懵,终于是在nginx日志文件error.log中找到了原因

文件上传java报Processing of multipart/form-data request failed. java.io.EOFException: Unexpected EOF read_第1张图片

错误内容是这样的:SSL_do_handshake() failed (SSL: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number) while SSL handshaking to upstream

解决办法:将nginx.conf中配置反向代理地址的ip改成localhost

location ~ ^/api{
                        proxy_set_header X-Real-IP $remote_addr;
                        proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
                        proxy_set_header Host $http_host;
                        proxy_set_header X-Nginx-Proxy true;
                        proxy_hide_header X-Frame-Options;
                        add_header X-Frame-Options sameorigin always;
                        client_max_body_size 500m;

                        proxy_pass http://localhost:8913;
}

 

你可能感兴趣的:(java,nginx,开发语言)