Nginx 访问被上游 nodeJs 拒绝

Posted

技术标签:

【中文标题】Nginx 访问被上游 nodeJs 拒绝【英文标题】:Nginx access Denied with nodeJs upstream 【发布时间】:2015-07-13 11:54:00 【问题描述】:

我正在使用 nginx 来上游服务器 nodeJs APP。

我有这个错误:

2015/05/04 08:41:46 [crit] 5355#0: *7 connect() to 127.0.0.1:2000 failed (13: Permission denied) while connecting to upstream, client: 127.0.0.1, server: ws-test.com, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:2000/", host: "ws-test.com"

是的,我们有很多例子要纠正,但没有任何效果......

我已将 nginx.conf 中的用户更改为正在连接的用户:like here

user adminmf

我为我的项目更改了 chmod:775

这是我的会议:

upstream proxy 
    # Correspond au serveur proxy que vous avez lancé avec npm run startProxy
    server localhost:2000;


server 
    listen 80;
    server_name ws-test.com;

    location / 
        proxy_pass http://proxy;
    

    error_log  /var/log/nginx/proxyWS.error.log;
    access_log  /var/log/nginx/proxyWS.access.log;

如果我使用命令

curl http://localhost:2000/
curl http://127.0.0.1:2000/

我的服务器正在运行....

但不是:

curl http://ws-test.com

是的,我的 /etc/hosts 中有这一行

127.0.0.1 ws-test.com

我需要帮助!

【问题讨论】:

因为 ws-test.com 表示 ws-test.com:80 ,您的服务器没有在监听。 我的服务器正在监听 80 端口:监听 80;如果我使用 curl ws-test.com:80 问题是一样的 没有别的了?没人更正吗?它已经不工作了.... 我在这里解决了我的问题:***.com/questions/23948527/…第二个答案 【参考方案1】:

如果您在 Fedora linux 上运行,禁用 SElinux 应该可以解决问题。 (谨慎使用)。

要暂时禁用 selinux,请执行sudo setenforce 0

要一次性禁用 selinux,请执行 vim /etc/selinux/configSELINUX=enforcing 更改为 SELINUX=disabled 保存并重新启动

sestatus查看安全增强状态。

【讨论】:

以上是关于Nginx 访问被上游 nodeJs 拒绝的主要内容,如果未能解决你的问题,请参考以下文章

nginx 错误:(13:权限被拒绝)同时连接到上游)

Nginx + Docker Compose-连接到上游时connect()失败(111:连接被拒绝)

cookie-cutter django nginx connect() 在连接到上游时失败(111:连接被拒绝),

Nginx 错误:(13:权限被拒绝)同时连接到上游

nginx:连接到上游时连接()失败(111:连接被拒绝)

连接到上游时connect()失败(111:连接被拒绝)