nginx 代理服务器 502 错误网关

nginx 代理服务器 502 错误网关

首先,如果我说了一些愚蠢的话,请原谅我,我没有服务器管理经验,但我被分配了这项任务。

对于我们的 Web 应用,我们希望设置一个代理服务器,以便拥有自己域名的客户可以指向我们的代理服务器,并且他们的域名将有效地作为我们应用的别名运行。我们希望使用代理服务器来实现这一点,而不是让他们必须直接使用站点的地址,以防将来发生更改。

我正在尝试在我们的暂存服务器中执行此操作,该服务器的主服务器具有以下 nginx 配置:

server {
    listen 80;

    server_name staging.oursite.com;

    access_log /home/appname/logs/nginx-access.log;
    error_log /home/appname/logs/nginx-error.log;

    location /static/ {
        alias /home/appname/appname/static/;
        expires 365d;
    }

    location /site_media/ {
        alias /home/appname/appname/media/;
        expires 365d;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/home/appname/run/gunicorn.sock;
    }

    error_page 502 /502.html;
    location = /502.html {
       root  /home/appname/appname/error_page/;
    }
}

我的理解是,设置代理所需要做的就是创建一个代理到其他服务器的新服务器块,因此我在下面添加了以下指令:

server {
    listen 80;

    server_name proxy.staging.oursite.com;

    location / {
        include proxy_params;
        proxy_pass http://staging.oursite.com;
    }
}

我重新启动了 nginx 以重新加载新配置,但是当proxy.staging.oursite.com我重新启动时,出现以下错误:

502 Bad Gateway

答案1

proxy_pass URL 也应该以“/”结尾,否则您将得到一个无效的 URL。

尝试:

proxy_pass http://staging.oursite.com/;

答案2

我建议查看服务器访问和错误日​​志 -> /var/log/nginx/error.log/var/log/nginx/access.log

还请检查是否staging.oursite.com可以访问。

相关内容