1. 程式人生 > >解決nginx下connect() to 127.0.0.1:3000 failed

解決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,我用第一種方案,完美解決,域名訪問成功,感謝開源,感謝部落格,感謝分享,