问题背景:
今天在测试过程共发现一个问题,由tomcat上传到linux的文件不能通过apache访问,之前只是临时手动的修改,今天决定把它解决。
问题分析:
查看上传文件的权限看到文件的权限位640,其他位上没有读的权限,这就导致了其他的用户不能够访问该权限。通过查阅资料了解到文件的默认权限是666,通过与umask与或运算后得到文件实际的权限,查看操作系统的umaks值是0022,那按照正常情况文件的权限应该是644,但实际却并不是如此,最后在tomcat下的catalina.sh文件中找到了定义,原来是tomcat重新执行了umask,而tomcat默认的umask值为0027,这样就导致文件的权限为640.
解决方案:
修改catalina中配置,将umask默认值改为0022.