uwsgi 从控制台启动并工作,但不想使用配置文件

uwsgi 从控制台启动并工作,但不想使用配置文件

我遇到了 uwsgi 问题。当我从控制台启动 uwsgi 时:

 uwsgi --socket 127.0.0.1:5555  --chdir /var/www/proj/smth/ --wsgi-file /var/www/.../rest_api/wsgi.py &

它显示网页,一切看起来都很好。但是当我使用 uwsgi 配置文件时,如下所示:

[uwsgi]
chdir = /var/www/proj
socket = :5555
wsgi-file = /var/www/proj/rest/rest_api/wsgi.py 
home = /var/www/proj
processes = 4
threads = 2
touch-reload=/var/www/proj/rest/rest_api/wsgi.py
daemonize=/var/log/uwsgi/rest.log
vacuum=true
; wtf we get errors w-out this and it won't start: 
no-site=true

我的 Web 浏览器中显示内部服务器错误。我运行 nginx。

我的一些 uwsgi 日志行如下所示:

ImportError: No module named ...
unable to load app 0 (mountpoint='') (callable not found or import error)
*** no app loaded. going in full dynamic mode ***
*** uWSGI is running in multiple interpreter mode ***
--- no python application found, check your startup logs for errors ---

答案1

那个设定

chdir = /var/www/proj

在命令行中运行它时看起来不一样

--chdir /var/www/proj/smth/ 

这是正确的吗,还是仅仅因为你编辑了你粘贴的内容?

答案2

我找到了解决方案。我删除了 uwsgi.ini 中的几行,只留下这些:

chdir = /var/www/proj/rest/
socket = 127.0.0.1:xxxx
wsgi-file = /var/www/proj/rest/rest_api/wsgi.py 
daemonize=/var/log/uwsgi/rest.log

现在它可以工作了。

相关内容