解決nginx下connect() to 127.0.0.1:3000 failed
阿新 • • 發佈:2018-11-07
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,我用第一種方案,完美解決,域名訪問成功,感謝開源,感謝部落格,感謝分享,