一般是在微服务 zuul 网关这里报错导致文件上传失败,所以先检查你的 zuul
文件上传到服务器出现 org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.217069926745995889.18000/work/Tomcat/localhost/ROOT] is not valid at org.springframework.web.multipart.support.StandardMultipartHttpServletRequest.parseRequest(StandardMultipartHttpServletRequest.java:112)
是因为长时间不使用系统,系统会自动删掉
/tmp/tomcat.217069926745995889.18000/work/Tomcat/localhost/ROOT
这个临时文件夹(用于临时存放上传的文件)
解决方案:
-
(临时)手动创建这个文件夹即可解决该问题
-
(永久)在 yml 设置文件临时存储路径
spring.http.multipart.location = /tmp/uploadfiles (spring 1.x)
或者
spring.servlet.multipart.location = /tmp/uploadfiles (spring 2.x)
方案二,在 zuul 服务、文件上传服务(如果有)都要加这个配置。