Nginx прокси-сервер на другой прокси-сервер Тайм-аут шлюза - PullRequest
0 голосов
/ 09 мая 2020

Я впервые развертываю приложение в среде развертывания, поэтому я полный новичок в этом, у меня есть прокси-сервер nginx (назовите его server1) на экземпляре с открытым IP-адресом для inte rnet & он направляет запросы на другой сервер на другом экземпляре (назовите его server2), на котором размещается мое приложение Django, файл conf для server1 выглядит следующим образом:

`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:

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; }
    }

Я запускаю свое приложение django, используя эту команду python manage.py runserver 0.0.0.0:8880, и я также сделал collectstatic перед запуском приложения.

Все работает нормально, когда я редактирую proxy_pass в server1 на http://10.156.0.4:8880 напрямую, но мне нужен был второй сервер nginx, чтобы я мог обслуживать файлы stati c для своего приложения.

Мне кажется, что я делаю что-то явно не так, но для жизнь меня я не могу понять.

1 Ответ

0 голосов
/ 10 мая 2020

Я выяснил проблему, между этими двумя экземплярами существовало правило брандмауэра, которое не разрешало вход или выход с порта 80, только порт 8880. Не думал об этом вообще!

...