一个nginx带多个tomcat集群环境,老是报如下错误:
2012/03/07 15:30:39 /opt/nginx/proxy_temp/4/31/0000000314" failed (13: Permission denied) while reading upstream, client: 172.16.1.33, server: www.XXX.com, request: "POST /XXX.do HTTP/1.1", upstream: "http://xxx.com/XXXX.do", host: "XXXX.com", referrer: "http:// www.2cto.com /XXXX.do"
查看了一下nginx进程ps aux|grep nginx
发现都是nobody的进程,但是nginx的目录都是root用户,另外集群tomcat也是属于root用户,而且root启动,查看nginx.conf:
user nobody
改成:user root
停止nginx -s stop
重启nginx -c nginx.conf
测试...
搞定。
2012/03/07 15:30:39 /opt/nginx/proxy_temp/4/31/0000000314" failed (13: Permission denied) while reading upstream, client: 172.16.1.33, server: www.XXX.com, request: "POST /XXX.do HTTP/1.1", upstream: "http://xxx.com/XXXX.do", host: "XXXX.com", referrer: "http:// www.2cto.com /XXXX.do"
查看了一下nginx进程ps aux|grep nginx
发现都是nobody的进程,但是nginx的目录都是root用户,另外集群tomcat也是属于root用户,而且root启动,查看nginx.conf:
user nobody
改成:user root
停止nginx -s stop
重启nginx -c nginx.conf
测试...
搞定。
本文解决了Nginx代理Tomcat集群时出现的权限拒绝错误。通过调整Nginx的运行用户为root并重启服务,成功消除了读取上游失败的问题。

4827

被折叠的 条评论
为什么被折叠?



