502错误的网关。在Ubuntu 16.04上部署的flask应用程序中发送文件作为响应时

时间:2017-09-15 13:32:23

标签: python nginx flask ubuntu-16.04 gunicorn

我已经构建了一个烧瓶应用程序,并使用Ubuntu 16.04部署在gunicorn上。这非常好,但不仅适用于请求。 根据要求,应用程序应该能够让管理员下载一个文件,即DB备份文件。 因此,应用程序创建一个sql转储文件,并使用以下代码将其发送给用户。

    from common.backup import Backup
    me = Backup()
    result = me.dump()
    full_path = result['full_path']
    file_name = result['file_name']
    contents = open(full_path).read()
    response = make_response(contents)
    response.headers["Content-Disposition"] = "attachment; filename=%s" % (file_name)
    return response

它适用于本地,但不起作用。我认为代理配置可能不正确。 我将发布nginx配置。

server {
listen 80;
server_name <IP_ADDRESS>;


access_log /var/log/nginx/<APP_NAME>-access.log;
error_log /var/log/nginx/<APP_NAME>-error.log info;
keepalive_timeout   5;

#sendfile        on;

location / {
    client_max_body_size 5M;
    include proxy_params;
    proxy_pass http://unix:/var/www/<APP_NAME>/<APP_NAME>.sock;
}
}

请看一下,让我知道您的解决方案。

祝你好运, 亚历

0 个答案:

没有答案