Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 主管/Gunicorn/Nginx/烧瓶-500错误_Python_Nginx_Flask_Gunicorn_Supervisord - Fatal编程技术网

Python 主管/Gunicorn/Nginx/烧瓶-500错误

Python 主管/Gunicorn/Nginx/烧瓶-500错误,python,nginx,flask,gunicorn,supervisord,Python,Nginx,Flask,Gunicorn,Supervisord,我很难排除这个错误 我将尽可能地概述上下文,在问题的最后,我将提供所有配置文件的内容 我正在使用gunicorn为我的Flask应用程序通电,Ngninx处理代理传递 如果我正在手动运行gunicorn run:app--log level=debug--log file=/tmp/test\u gunicor65.log则在访问 同时,如果我试图通过supervisor运行gunicorn,服务器会抛出500个内部服务器错误 我的nginx配置: server { server_nam

我很难排除这个错误

我将尽可能地概述上下文,在问题的最后,我将提供所有配置文件的内容

我正在使用gunicorn为我的Flask应用程序通电,Ngninx处理代理传递

如果我正在手动运行
gunicorn run:app--log level=debug--log file=/tmp/test\u gunicor65.log
则在访问

同时,如果我试图通过supervisor运行gunicorn,服务器会抛出500个内部服务器错误

我的nginx配置:

server {
    server_name test.something.com;
    location / {
        proxy_pass http://localhost:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}
我的上司:

[program:something]
command = /home/ubuntu/work/repos/something/gunicorn_start_project
directory = /home/ubuntu/work/repos/something 
stdout_logfile=/var/log/supervisor/supervisor_stdout.log
stderr_logfile=/var/log/supervisor/supervisor_stderr.log
user = ubuntu
gunicorn\u启动项目的内容:

#!/bin/bash
exec venv/bin/gunicorn run:app --log-level=debug --log-file=/tmp/test_gunicorn65.log

tl;dr:不确定为什么当gunicorn从CLI手动启动时,应用程序会被服务,当由supervisor启动时,它会抛出“内部服务器错误”。

日志会说什么?我在nginx Error.log中看到的唯一内容是:14270#14270:*1 connect()在连接到上游时失败(111:连接被拒绝),客户端:my.ip.address,服务器:my.host.com,请求:“GET/HTTP/1.1”,上游:,主机:“my.host.com”。不确定是什么原因造成的,或者这是否是我出错的原因。手动运行gunicorn时,我没有得到类似的结果。在您的配置中,它在哪里告诉gunicorn/您的应用程序在端口8000上托管服务器?从服务器(或使用SSH代理)尝试直接连接到套接字(例如
nc localhost 8000
,然后键入
GET/HTTP/1.1\n Host:my.Host.com\n\n
)@Alex,将
\n
替换为换行符(回车)。