Ⅰ. Issue Description
版本2.3.2下使用proxy_cache反向代理缓存静态文件出现权限不足错误
Ⅱ. Describe what happened
1.访问环境出现500
2.日志error.log内出现opendir (proxy_temp_path/proxy_cache_path)permission denied错误
Ⅲ. Describe what you expected to happen
1.worker进程是nobody或者其他时,应该要有权限使用cache目录
Ⅳ. How to reproduce it (as minimally and precisely as possible)
1.正常配置proxy_temp_path/proxy_cache_path,nginx -t测试配置文件无问题
2.使用root用户启动nginx,查看到worker进程属主为nobody
3.进程启动后会自动创建上述配置的缓存路径,看目录结构无问题,目录属主为nobody,组为root
4.但此时报错,出现permission denied。
5.修改nginx.conf中user nobody为user root无上述错误
Ⅴ. Anything else we need to know?
1.同样的配置nginx worker进程为nobody时,无问题
Ⅵ. Environment:
- Tengine version (2.3.2):
- OS (centos6.5):
- Kernel (2.6.32-431.el6.x86_64):
- Others:
2条答案
按热度按时间n6lpvg4x1#
nginx的rpm包看了一些,文件夹授权是这样写的,参考下:
9jyewag02#
nginx的rpm包看了一些,文件夹授权是这样写的,参考下:
nginx是编译安装的,在提这个issue之前就在nginx把这个问题测试了,最奇怪的是tengine、nginx编译参数一致,且主要配置都是一样的,它们启动时自动创建的文件夹权限也是一样的,但是实际浏览器访问tengine的时候看日志发现对它自己自动创建的文件夹提示权限有错误,修改为777也不行。