解决nginx下connect() to 127.0.0.1:3000 failed

        Windows下简单开发了一个nodejs项目,用3000 端口,迁移到虚机centos服务器上时发现本地端口启动可以,但是nginx做域名转发时一直报错:

connect() to 127.0.0.1:3000 failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1, server:

权限问题,于是修改配置文件,nginx启动权限,防火墙端口巴拉巴拉 都不管用,纠结头疼,

后来周一后百度下找到了一个方案:说是SeLinux导致:

1、执行下面的命令

setsebool -P httpd_can_network_connect 1

2、关闭SeLinux

 

查看SELinux状态:

1、/usr/sbin/sestatus -v      ##如果SELinux status参数为enabled即为开启状态

SELinux status:                 enabled

2、getenforce                 ##也可以用这个命令检查

关闭SELinux:

1、临时关闭(不用重启机器):

setenforce 0                  ##设置SELinux 成为permissive模式

##setenforce 1 设置SELinux 成为enforcing模式

2、修改配置文件需要重启机器:

修改/etc/selinux/config 文件

将SELINUX=enforcing改为SELINUX=disabled

重启机器即可

方案转载自itnose,我用第一种方案,完美解决,域名访问成功,感谢开源,感谢博客,感谢分享,

猜你喜欢

转载自www.cnblogs.com/kellphen/p/9921358.html