关于python:Django-Supervisor:退出太快

Django - Supervisor : exited too quickly

我尝试在Ubuntu服务器16.04上的Django Supervisor NGINX中部署我的网站。

这是我的.conf(主管):

1
2
3
4
5
[program:sitepro]
command = /home/user/sitepro/bin/gunicorn sitepro.wsgi:application --bind mywebsite.fr:8002
user = user
autostart = true
autorestart = true

我的NGINX配置文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
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时,一切正常:

1
2
3
4
5
(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

1
sitepro                          FATAL     Exited too quickly (process log may have details)

而且,如果我访问我的网站,则会看到"欢迎使用Nginx"默认页面。

我已经尝试了许多有关部署django的教程:我迷路了,尝试了许多事情。
有人可以给我一个简单快速的教程来部署他用于自己的propre需求的Django吗?

谢谢!


问题是您在配置文件中缺少directory=...

1
2
3
4
5
6
[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

否则,古尼康不知道在哪里找到sitepro.wsgi:application


要查看发生了什么,您应该记录主管的输出。

为此,请打开超级用户.conf文件,并添加以下几行:

1
2
3
4
5
stdout_logfile={Path}
stderr_logfile={Path}
autostart=true
autorestart=true
startsecs=10

可能的{Path}可能是/ home / {youruser} /sitepro.log

重新启动主管

1
supervisorctl restart sitepro

重新启动后,转到日志并告诉我们您看到的内容。