所以我试图让 uWSGI 和 nginx 一起工作,并希望将以下命令行设置为自动执行并启动我的 uWSGI 后台服务:
uwsgi --master --processes 4 --die-on-term --uid uwsgi --gid nginx --socket /tmp/uwsgi.sock --chmod-socket --stats :1717 --no-site --vhost --logto /var/log/uwsgi.log
使用 systemd 时,我认为我唯一需要做的就是使用ExecStart=
并启动该命令。但是由于 systemd 需要绝对路径,所以我查看了默认的 uWSGI 启动脚本,发现它/usr/bin/uwsgi
或者usr/sbin/uwsgi
将是默认的启动路径。
所以对我来说最终的 exec 命令看起来像这样:
ExecStart=/usr/bin/uwsgi --master --processes 4 --die-on-term --uid uwsgi --gid nginx --socket /tmp/uwsgi.sock --chmod-socket --stats :1717 --no-site --vhost --logto /var/log/uwsgi.log
问题:运行它时无法找到--no-site
在 virtualenv 中运行所有内容的选项。在命令行中启动它时uwsgi
,这不是问题。但即使/usr/bin/uwsgi
直接从命令行启动,我也会收到此错误。
所以在我看来,该uwsgi
命令不仅仅是/usr/bin/uwsgi
直接运行。但我不确定我需要做什么才能使其正常工作。
我真的很感激我能得到的任何帮助。