我使用 bash 脚本来运行 gunicorn。它被命名为_run_gunicorn.sh_
#!/bin/bash
NAME=new_project
DJANGODIR=/home/flame/Projects/$NAME
SOCKFILE=/home/flame/launch/web.sock
USER=flame
GROUP=flame
DJANGO_SETTINGS_MODULE=$NAME.settings
DJANGO_WSGI_MODULE=$NAME.wsgi
# export PWD=$DJANGODIR # still not work if I uncomment THIS LINE
RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR
gunicorn ${DJANGO_WSGI_MODULE}:application \
--name $NAME \
--workers 7 \
--user=$USER --group=$GROUP \
--log-level=debug \
--bind=unix:$SOCKFILE
如果我从项目目录运行:
[/home/flame/Projects/new_project]$ bash run_gunicorn.sh
它运作良好。但如果
[~]$ bash Projects/new_project/run_gunicorn.sh
它会引发错误:
gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
我想这是关于当前工作目录的。所以我在gunicorn运行export PWD=$DJANGODIR
之前更改了 add 。但错误仍然存在。
是关于一些与python相关的环境变量吗?或者有什么问题?