Python Django-主管:退出太快
我尝试在Ubuntu服务器16.04上的Django+Supervisor+NGINX中部署我的网站 这是我的.conf(主管): 我的NGINX配置文件:Python Django-主管:退出太快,python,django,nginx,Python,Django,Nginx,我尝试在Ubuntu服务器16.04上的Django+Supervisor+NGINX中部署我的网站 这是我的.conf(主管): 我的NGINX配置文件: server { listen 80; server_name .mywebsite.fr; charset utf-8; root /home/user/sitepro/site/sitepro; access_log /home/user/sitepro/site/logs/ng
server {
listen 80;
server_name .mywebsite.fr;
charset utf-8;
root /home/user/sitepro/site/sitepro;
access_log /home/user/sitepro/site/logs/nginx/access.log;
error_log /home/user/sitepro/site/logs/nginx/error.log;
location /static {
alias /home/user/sitepro/site/static;
}
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_pass http://127.0.0.1:8002;
}
}
当我尝试在项目的根目录上启动gunicorn时,一切正常:
(sitepro) user@mybps:~/sitepro/site$ gunicorn sitepro.wsgi:application --bind mywebsite.fr:8002
[2017-11-01 16:09:37 +0000] [1920] [INFO] Starting gunicorn 19.7.1
[2017-11-01 16:09:37 +0000] [1920] [INFO] Listening at: http://79.137.39.12:8002 (1920)
[2017-11-01 16:09:37 +0000] [1920] [INFO] Using worker: sync
[2017-11-01 16:09:37 +0000] [1925] [INFO] Booting worker with pid: 1925
我已经做了一个supervisorctrl重读和更新(工作)。
如果我让supervisorctl状态为sitepro
sitepro FATAL Exited too quickly (process log may have details)
如果我访问我的网站,我会得到“欢迎使用Nginx”的默认页面
我已经尝试了很多关于DeployDjango的教程:我迷路了,尝试了很多东西。
有人能给我一个简单而快速的教程来部署Django,他用它来满足自己的需要吗
谢谢 要查看发生了什么,您应该记录主管的输出 为此,请打开supervisor.conf文件,并添加以下行:
stdout_logfile={Path}
stderr_logfile={Path}
autostart=true
autorestart=true
startsecs=10
可能的{Path}可以是/home/{youruser}/sitepro.log
重新启动管理器
supervisorctl restart sitepro
重新启动后,请转到日志并告诉我们您看到了什么。问题是您缺少配置文件中的
目录=…
[program:sitepro]
command = /home/user/sitepro/bin/gunicorn sitepro.wsgi:application --bind mywebsite.fr:8002
directory = /home/user/sitepro/site
user = user
autostart = true
autorestart = true
否则gunicorn将不知道在my.conf(supervisor)文件中的哪里可以找到sitepro.wsgi:application
:
command=/home/user/sitepro/bin/gunicorn sitepro.wsgi:application--bind mywebsite.fr:8002
仔细检查目录路径:(/home/user/sitepro/bin/gunicorn sitepro.wsgi:application
)
您可能输入的路径不正确。应用程序启动了,但我仍然收到了“欢迎使用NGINX”。看起来你有默认的配置服务。查找文件
/etc/nginx/conf.d/default.conf
或/etc/nginx/sites enabled/default
。删除默认配置文件,然后重新启动nginx。它应该尝试将--bind mywebsite.fr:8002
更改为--bind 127.0.0.1:8002
netstat-plant的输出是什么?还有supervisor tail sitepro
?Tarun找到我的问题:我忘了在站点可用性和站点启用的HeadDesk之间设置符号链接-好主意!我在下面的评论中看到了与Tarun Lalwani相同的错误。
[program:sitepro]
command = /home/user/sitepro/bin/gunicorn sitepro.wsgi:application --bind mywebsite.fr:8002
directory = /home/user/sitepro/site
user = user
autostart = true
autorestart = true