我想用FastCGI运行我的Django站点。
我可以使用以下命令成功启动TCP服务器。
python manage.py runfcgi method=prefork host=127.0.0.1 \
port=3000 maxrequests=100 daemonize=true但是,如果我在命令中添加pidfile选项,则如果失败。
python manage.py runfcgi method=prefork host=127.0.0.1 \
port=3000 maxrequests=100 daemonize=true pidfile=/var/run/django.pid第二个命令输出的情况也不例外,但是TCP服务器没有启动。
Django版本: 1.6.11
我想知道导致这次失败的原因是什么?
我想失败可能是因为权限问题。我正在使用标准用户运行该命令。但是,如果我使用sudo,它并不能解决这个问题。
谢谢Andriy的回答,我解决了这个问题。由于权限原因,未启动TCP服务器。但是,简单地使用sudo执行命令是行不通的。
此外,我也尝试使用django.pid作为pidfile的名称。但是,脚本似乎没有正确地解析相对路径。在将pidfile更改为当前用户有权使用绝对路径写入的文件夹后,它可以工作!
发布于 2016-03-09 07:41:27
最有可能的是,您有没有允许在/var/run/django.pid中创建pidfile。
您可以使用命令更改chmod of /var/run
sudo chmod -R 666 /var/run或者将pidfile放在您具有写权限的文件夹下,例如。
python manage.py runfcgi method=prefork host=127.0.0.1 \
port=3000 maxrequests=100 daemonize=true pidfile=$HOME/django.pidhttps://stackoverflow.com/questions/35885550
复制相似问题