解决Tomcat8上传文件无可读权限问题

描述

使用springmvc做了一个文件上传的功能,上传到nginx目录下的一个文件夹,但是通过目录访问的时候却报403的错误
图片.png
去服务器查看了一下文件的权限,发现没有可读权限,于是定位了问题,上传的文件全都没有可读权限。

为什么没有可读权限

网上查阅资料发现,linux默认umask为022,对应权限为755,其它用户可读可执行。可以vim /etc/profile,搜索umusk关键字查看

if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
    umask 002
else
    umask 022

而tomcat8默认umask为027,对应权限为750,也就是说其它用户连可读的权限都没有。
可打开catalina.sh文件,搜索umask查看。

# Set UMASK unless it has been overridden
if [ -z "$UMASK" ]; then
    UMASK="0027"
fi
umask $UMASK

在catalina.sh文件的开篇可以看到

#   UMASK           (Optional) Override Tomcat's default UMASK of 0027

于是问题有了答案
登录到服务器,进入到tomcat的bin目录下

vim catalina.sh
输入i,进入编辑模式,将umask改为0022
:wq(保存退出)

可以看到
3b0b9d5dc0f2d2115073293aeee4331.png
接下来重启tomcat,重新上传图片即可香油可读权限。

个人博客
腾讯云社区
掘金
CSDN
简书
GitHub
码云
OSCHINA
Segmentfault
公众号:wx.jpg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值