新版本的tomcat加强了安全性,通过tomcat在服务器端建立的文件,others是没有访问权限的。这样导致Nginx静态图片服务无法访问报以下错误:
Forbidden
You don't have permission to access /file/image/20170417/20170417144110011542.png on this server.
解决办法是在tomcat的bin目录下的catalina.sh文件中大约260行覆盖默认的umask:
if [ -z "$LOGGING_MANAGER" ]; then
LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
fi
# Set UMASK unless it has been overridden
if [ -z "$UMASK" ]; then
UMASK="0027"
fi
在该代码下面添加:
umask 022
以上。