我无法满足Nginx的要求

时间:2019-03-26 15:00:51

标签: nginx gunicorn

我有一个在Nginx服务器上运行的React Web应用程序。服务器在端口80上运行。

它的conf是这样的:

location / { 
    proxy_pass http://127.0.0.1:5000;
    proxy_connect_timeout 75s;
    proxy_read_timeout 300s;
    try_files $uri $uri/ =404;

Gunicorn已绑定到我的flask应用程序,并在127.0.0.1:5000上运行。当我这样做时,我看不到我的网站。它说

This site can’t be reached 127.0.0.1 refused to connect.

理想情况下,Nginx会通过端口80提供静态文件,并且当在React端提出获取请求时,它将在127.0.0.1:5000传递给gunicorn和flask

当我将位置设置为位置/ insert_email(我的反应获取)时,我可以加载网站,但是我从未在Gunicorn服务器上收到电子邮件插入请求

1 个答案:

答案 0 :(得分:1)

这是一个示例NGINX配置,我知道它可以用作Gunicorn的反向代理。

#Config Contents
server {
    listen       80;
    server_name  site.your.domain;
    # Or use the following if you do not have a domain
    #server_name 123.123.123.123;

    location / {
        proxy_pass http://127.0.0.1:5000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Scheme $scheme;
    }
}

Gunicorn Run字符串看起来像

gunicorn --bind localhost:5000 flask_app:app

作为健全性检查,您可以检查哪些进程正在使用侦听哪些端口

lsof -i -P -n | grep LISTEN

确保您的服务器至少允许来自您IP地址的端口80上的流量。