我遇到了 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
现在它可以工作了。