用户工具

站点工具


bugs:javaee:2019011601

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
bugs:javaee:2019011601 [2019/03/15 10:01]
jinlong 创建
bugs:javaee:2019011601 [2020/07/12 12:07] (当前版本)
行 1: 行 1:
-CentOS自动清理临时文件夹导致的文件无法上传 +====== ​CentOS自动清理临时文件夹导致的文件无法上传 ​====== 
-## 错误现象+===== 错误现象 ​=====
 使用springboot接收上线文件,系统报错如下: 使用springboot接收上线文件,系统报错如下:
  
-```+<​code>​
 org.springframework.web.multipart.MultipartException: ​ org.springframework.web.multipart.MultipartException: ​
 Could not parse multipart servlet request; Could not parse multipart servlet request;
 nested exception is java.io.IOException: ​ nested exception is java.io.IOException: ​
 The temporary upload location [/​tmp/​tomcat.277464978154576567.8516/​work/​Tomcat/​localhost/​ROOT] is not valid  The temporary upload location [/​tmp/​tomcat.277464978154576567.8516/​work/​Tomcat/​localhost/​ROOT] is not valid 
-```+</​code>​
  
  
-## 原因+===== 原因 ​=====
  
-1. springboot启动后,会分配一个tmp目录给springboot应用,本例中目录地址为:/​tmp/​tomcat.277464978154576567.8516/​ +  - springboot启动后,会分配一个tmp目录给springboot应用,本例中目录地址为:/​tmp/​tomcat.277464978154576567.8516/​ 
-2. 但是操作系统会定期清除tmp文件夹,时间长了以后,这个文件夹被删掉以后,springboot就找不到这个目录了,就会报错+  ​- ​但是操作系统会定期清除tmp文件夹,时间长了以后,这个文件夹被删掉以后,springboot就找不到这个目录了,就会报错
  
-## 解决方案+===== 解决方案 ​=====
  
 在application.yml里面手工指定临时文件夹,保证数据不会被删掉 在application.yml里面手工指定临时文件夹,保证数据不会被删掉
  
-~~~+<​code>​
 spring: spring:
   http:   http:
     multipart:     multipart:
       location: /​data/​upload_tmp       location: /​data/​upload_tmp
-~~~+</​code>​
  
 若是使用application.properties文件,则使用: 若是使用application.properties文件,则使用:
  
-```+<​code>​
 spring.http.multipart.location=/​data/​upload_tmp spring.http.multipart.location=/​data/​upload_tmp
-```+</​code>​
  
bugs/javaee/2019011601.1552615304.txt.gz · 最后更改: 2020/07/12 12:07 (外部编辑)