【问题标题】:Nginx proxy server to another proxy server Gateway timeoutNginx 代理服务器到另一个代理服务器网关超时
【发布时间】:2020-05-10 05:30:59
【问题描述】:

这是我第一次在部署环境中部署应用程序,所以我是一个完整的初学者,我在一个实例上有一个 nginx 代理服务器(称为 server1),它的 IP 暴露在互联网上,它将请求路由到另一个服务器在托管我的 Django 应用程序的不同实例(称为 server2)上,server1 的 conf 文件如下所示:

`server{
    server_name _;
    location / {
            proxy_pass_header Authorization;
            proxy_pass http://10.156.0.4:80;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_http_version 1.1;
            proxy_set_header Connection “”;
            proxy_buffering off;
            client_max_body_size 0;
            proxy_read_timeout 36000s;
            proxy_redirect off;
    }

    listen 443 ssl;
    listen [::]:443 ssl;
    include snippets/self-signed.conf;
    include snippets/ssl-params.conf; }
server{
    listen 80;
    listen [::]:80;
    server_name _;

    return 302 https://35.246.244.220;}

和第二台服务器:

server{
    listen 80;
    listen [::]:80;
    server_name _;

    location / {
            proxy_pass_header Authorization;
            proxy_pass http://10.156.0.4:8880;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_http_version 1.1;
            proxy_set_header Connection “”;
            proxy_buffering off;
            client_max_body_size 0;
            proxy_read_timeout 36000s;
            proxy_redirect off;
    }
    location /static/ {
             alias /opt/app/mydjangoapp/staticfiles/;
             autoindex off; }
    }

我正在使用此命令 python manage.py runserver 0.0.0.0:8880 运行我的 django 应用程序,并且在运行该应用程序之前我也执行了 collectstatic

当我将 server1 中的 proxy_pass 直接编辑为 http://10.156.0.4:8880 时,一切正常,但我需要第二个 nginx 服务器,以便为我的应用程序提供静态文件。

我觉得我在这里做了一些明显错误的事情,但对于我的生活,我无法弄清楚。

【问题讨论】:

    标签: django nginx nginx-reverse-proxy nginx-config


    【解决方案1】:

    我发现了问题,这两个实例之间有一条防火墙规则,不允许从端口 80 进出,只允许从端口 8880 进出。完全没有想到这个!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-20
      • 2015-09-10
      • 1970-01-01
      • 2021-07-01
      • 2020-09-22
      • 2023-02-07
      • 2017-08-16
      • 1970-01-01
      相关资源
      最近更新 更多