您的位置:首页 > 运维架构 > Tomcat

springmvc、tomcat、linux上传文件后无访问权限

2020-02-02 05:39 826 查看

1、使用springmvc、tomcat、linux,上传文件后,该文件无访问权限。

tomcat版本发生在8.5以上

tomcat7、tomcat8.0无此现象,tomcat8.5、tomcat9都有次现象

2、原因

tomcat出于安全原因,更改了用户文件目录权限。官方地址(https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html),修改地址中对应的版本号即可查看各种版本中的安全配置,找到Non-Tomcat settings标题查看

7.0

 

8.0

 

8.5

9.0

关键字 umask

umask:umask是“用户文件创建模式掩码”的缩写,是一个四位的八进制数值。用来确定一个新创建文件的权限。每个进程都从父进程那里继承了自己的umask。一般该命令会在.bashrc,.profile,.cshrc或是/etc/profile及/etc/bashrc中。

计算umask值最简单的方法是记住:umask值中的2屏蔽了写权限,而7屏蔽了读,写及执行权限。

8.5以后的版本使用的是umask=0027,屏蔽了用户读的权限,故api上传文件后,用户无法访问该文件。

3、解决方案

找到tomcat的bin目录下的catalina.sh 文件,大概260行附近,修改UMASK的值为0022,即

UMASK="0027" 改为 UMASK="0022"

修改完成后,重启tomcat

转载于:https://my.oschina.net/u/1434882/blog/1784938

  • 点赞
  • 收藏
  • 分享
  • 文章举报
chigu3634 发布了0 篇原创文章 · 获赞 0 · 访问量 122 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: