linux自动删除tmp目录下文件导致java临时目录失效

转载于http://blog.c7d8.com/blog/9.html ,原文可能有更新,以原文为准
技术支持反馈前几天还好好的文件上传功能今天报错了,首先考虑到的是可能有bug,但测试了各个其他部署的环境,均没有发现问题,考虑到错误环境为独立部署,所以重点放在服务器的差异排查上。根据如下日志,

2019-02-26 17:17:44,933 [http-nio-8080-exec-1] ERROR c.y.g.m.h.GlobalExceptionHandler 49 - MultipartException
org.springframework.web.multipart.MultipartException: Could not parse multipart servlet request; nested exception is java.io.IOException: The temporary upload location [/tmp/tomcat.800627778416494568.8080/work/Tomcat/localhost/ROOT] is not valid

发现该目录不见了,重启web项目后解决。
但究其原因,考虑到java项目的临时目录存在linux系统的tmp目录中,所以考虑到是不是这个目录被清理了

参考如下文章,添加x /tmp/tomcat.*临时解决

CentOS7的/tmp目录自动清理规则 - leonnew的博客 - CSDN博客
https://blog.csdn.net/leonnew/article/details/79258453
Linux系统下/tmp目录文件重启后自动删除,不重启自动删除10天前的/TMP的文件(转) - 技术颜良 - 博客园
https://www.cnblogs.com/cheyunhua/p/8522466.html

但始终觉得这不是有效的解决方式,这样直接排除tomcat目录,以后这个目录会越来越多,越来越大,难道不应该是等文件没有访问超过10天后才去删除?具体配置有空再折腾一下!

你可能感兴趣的:(JavaWeb,springboot)