【发布时间】:2026-02-19 13:50:02
【问题描述】:
我知道这是一个常见的问题,但我已经看到很多关于 frankenstein ini 文件的示例,这些示例毫无意义。基于具有不同文件系统布局的不同系统:
例如/etc/uwsgi/vassals -vs- /etc/uwsgi/apps-{enabled|available} -vs- 单独启动 uwsgi
所以,在 14 小时的脑损伤后,请看在我的理智上:
我有一个具有这种布局的基本 Flask 项目:
/srv/py/mylovelyapp/mylovelyapp.py
/models.py
/database.py
/static/
/templates/
我的ini文件(位于/etc/uwsgi/apps-enabled/mylovelyapp.ini)是:
[uwsgi]
plugins = python
base = /srv/py/mylovelyapp
app = mylovelyapp
callable = app
gid = www-data
uid = www-data
vhost = true
socket = 127.0.0.1:3031
master = true
processes = 1
harakiri = 20
limit-as = 128
nginx 配置在 /etc/nginx/sites-enabled/mysite.conf:
server {
listen 80;
server_name www.mylovelyapp.co.uk mylovelyapp.co.uk;
charset utf-8;
client_max_body_size 75M;
location / { try_files $uri @yourapplication; }
location @yourapplication {
include uwsgi_params;
uwsgi_pass 127.0.0.1:3031;
}
location /static/ {
alias /srv/py/mylovelyapp/static/;
expires 30d;
access_log off;
}
access_log /var/log/nginx/mylovelyapp-a.conf;
error_log /var/log/nginx/mylovelyapp-e.conf;
}
我在跟踪 /var/log/uwsgi/mylovelyapp.log 时得到的错误输出是这样的:
Mon May 26 06:41:40 2014 - *** Python threads support is disabled. You can enable it with --enable-threads ***
Mon May 26 06:41:40 2014 - Python main interpreter initialized at 0x1445e50
Mon May 26 06:41:40 2014 - your server socket listen backlog is limited to 100 connections
Mon May 26 06:41:40 2014 - your mercy for graceful operations on workers is 60 seconds
Mon May 26 06:41:40 2014 - mapped 145536 bytes (142 KB) for 1 cores
Mon May 26 06:41:40 2014 - *** Operational MODE: single process ***
Mon May 26 06:41:40 2014 - *** no app loaded. going in full dynamic mode ***
Mon May 26 06:41:40 2014 - *** uWSGI is running in multiple interpreter mode ***
Mon May 26 06:41:40 2014 - spawned uWSGI master process (pid: 2380)
Mon May 26 06:41:40 2014 - spawned uWSGI worker 1 (pid: 2388, cores: 1)
访问 URL 时会给出消息:
Internal Server Error
我知道我缺少一些简单的参考,但我正在尝试各种正确和错误以及谷歌搜索,但遇到的示例都不太适合我使用。如此简单的应用程序和设置!
请,请帮忙。 :(
P.S. 如果您能告诉我如何让它使用该烧瓶应用程序的虚拟机,那么您将获得额外的爱和永恒的感激。
P.P.S 我听说 Gunicorn 更容易 - 也许我应该改用那个?
【问题讨论】: