首页 > 解决方案 > 当我使用 UWSGI 运行时,我的页面没有响应

问题描述

我想要一个实时仪表板,我克隆了这个https://github.com/roniemartinez/real-time-charts-with-flask.git

我安装了要求,每当我使用“python application.py”命令运行时,应用程序运行正常且正常。应用程序中的“/”路由响应良好且运行良好......

我将应用程序添加到 uwsgi ini 文件中,并在运行时添加。“/”的网页变得无响应并每 30 秒显示一次图表。该应用程序一切正常。但我认为问题出在我的 nginx 配置或 uwsgi ini 上。

有什么问题?

[uwsgi]


base = /home/pi/Desktop/Bingo

app = application
module = %(app)

home = %(base)/venv
pythonpath = /home/pi/Desktop/Bingo/venv/bin/python

socket = /home/pi/Desktop/Bingo/%n.sock

chmod-socket    = 666

callable = app


logto = /home/pi/Desktop/Bingo/log/uwsgi/%n.log

我的 nginx 配置是

server {
    listen  80;
    server_name localhost;
    charset utf-8;
    client_max_body_size 75M;

    location /static {
    root /home/pi/Desktop/Bingo;
    }

    location / { try_files $uri @labapp;}
    location @labapp {
    include uwsgi_params;
    uwsgi_pass unix:/home/pi/Desktop/Bingo/lab_app_uwsgi.sock;
    }
}

标签: nginxflaskchart.jsresponsiveuwsgi

解决方案


uwsgi日志可能包含一些有用的线索。将您uwsgi.ini与我的一个进行比较,我发现了一些可能很重要的差异。首先,我总是chdir在应用程序的基础上,在你的情况下看起来像

[uwsgi]
chdir = /home/pi/Desktop/Bingo
home = /home/pi/Desktop/Bingo/venv
module = application:application
... socket
... log

我还想知道是否也可能有不匹配,这取决于你如何命名事物,在

socket = /home/pi/Desktop/Bingo/%n.sock

uwsgi_pass unix:/home/pi/Desktop/Bingo/lab_app_uwsgi.sock;

nginx 错误日志是查看的地方。

(有关工作示例,请参见https://github.com/davewsmith/nginx-uwsgi-flask-starter/blob/master/provision/starter.ini )


推荐阅读