Nodejs Nginx的错误:(13:权限被拒绝),而连接到上游

我试图在CentOS 7上运行的Nginx服务器上运行多个Nodejs应用程序。我注意到,当我在某些端口上运行一个Nodejs应用程序时,在浏览器中出现502 Bad Gateway错误,所以我检查了错误日志:

[notice] 12806#0: signal process started [crit] 12807#0: *13 connect() to 127.0.0.1:7777 failed (13: Permission denied) while connecting to upstream, client: **.**.99.58, server: myapp.com, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:7777/", host: "myapp.com" [crit] 12807#0: *13 connect() to [::1]:7777 failed (13: Permission denied) while connecting to upstream, client: **.**.99.58, server: myapp.com, request: "GET / HTTP/1.1", upstream: "http://[::1]:7777/", host: "myapp.com" 

当我改变应用程序听8008例如一切工作正常。 我检查了权限,如果进程是以超级用户身份运行,并且一切正常。 我玩超时,但没有结果。 谁能帮忙?

  • 安装和configurationdocular
  • Nginx WebSocket反向代理保持返回200而不是101
  • 主机名与本地主机端口 - OSX
  • 值得运行Nginx的我的Node.js应用程序的静态文件?
  • 长轮询选项:Nginx,PHP,Node.js
  • 我应该将Node.js移动到单独的服务器,还是将它与LNMP一起托pipe?
  • One Solution collect form web for “Nodejs Nginx的错误:(13:权限被拒绝),而连接到上游”

    默认情况下,SELinux只允许Web服务器build立到有限的一组端口的出站连接。

     # semanage port --list http_port_t tcp 80, 81, 443, 488, 8008, 8009, 8443, 9000 

    要解决这个问题,你只需要把你自己想要的端口号添加到列表中。

     # semanage port --add --type http_port_t --proto tcp 7777 

    然后,你会看到添加到列表中的端口号,然后你的连接应该工作。

     # semanage port --list http_port_t tcp 7777, 80, 81, 443, 488, 8008, 8009, 8443, 9000 
    服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器.