我在/etc/uwsgi/vassals/gsd.ini
中有以下附庸配置:
[uwsgi]
plugins = python
env = DJANGO_SETTINGS_MODULE=%n.settings
virtualenv = /home/toogy/.pyenv/versions/%n
chdir = /home/webapps/%n
module = %n.wsgi:application
master = true
vacuum = true
pidfile = /tmp/uwsgi-%n.pid
socket = /tmp/uwsgi-%n.sock
daemonize = /var/log/uwsgi/%n.log
chmod-socket = 666
uid = toogy
gid = toogy
这是我得到的uwsgi日志
^{pr2}$它找不到django
,我不知道为什么,因为uwsgi
似乎检测到了python环境(其中安装了django
)。在
另外,它显示Python version: 3.6.0
,而我的virtualenvpython版本是3.5.2。我不知道这是否应该发生。系统Python版本是3.6.0。在
我使用的是uwsgi
和uwsgi-plugins-python
archlinux官方软件包的最新版本。在
请看
gsd.ini
:您在这个virtualenv下安装了
django
了吗?在在我的例子中,它使用的是全系统的uwsgi,我使用的是virtualenv,所以如果我执行
我得到了
/usr/local/python3.6/bin/uwsgi
正如Valentin Iovene所建议的那样,您需要从您的虚拟环境中使用uwsgi
我的目录结构如下:
^{pr2}$(应用程序目录是我的django应用程序所在的目录)
在我的例子中,uwsgi文件没有执行权限,所以我只执行了:
最后,在我的app目录下,我执行了uwsgi命令,如下所示:
现在我可以看到我的应用程序正在工作:)
我遵循这个指南:https://uwsgi-docs.readthedocs.io/en/latest/tutorials/Django_and_nginx.html
接下来的步骤是配置nginx和https。。。在
我知道这是一个迟来的反应,但希望这有助于和大家分享对我有用的东西。在
问题是连接到uwsgi的全系统python版本需要与virtualenv的版本相同,我认为这是一件非常愚蠢的事情。在
相关问题 更多 >
编程相关推荐