Tomcat8.5.51程序上传文件没有读写权限

根本原因:

因为tomcat版本太高导致。我当前使用的是tomcat8.5.51,8.0版本没有此问题。

1.需要检查linux系统权限
linux文件访问默认权限与umask设置有关系,先检查系统默认配置(/etc/profile)是否是002或022。

umask 002 对应文件权限664,文件夹权限775;
umask 022对应文件权限644,文件夹权限755

2.需要检查tomcat
检查bin/catalina.sh文件,将0027改改为0022,重启tomcat,上传访问的问题解决。

原代码:
# Set UMASK unless it has been overridden
if [ -z "$UMASK" ]; then
    UMASK="0027"
fi
修改为
# Set UMASK unless it has been overridden
if [ -z "$UMASK" ]; then
    UMASK="0022"
fi
3.重启tomcat
sh shutdown.sh(关闭)
sh startup.sh 或者 ./startup.sh(启动)

总结:

web应用程序上传文件到Linux,生成文件没有读写权限,有以下3种解决方案:
1.降低我的tomcat版本。
2.修改tomcat中的bin/catalina.sh配置,并重启tomcat(这个我觉得是最根本的,推荐使用)

你可能感兴趣的:(java专栏)