记录自己django+supervisor+gunicorn+nginx 的配置过程

pip install gunicorn
pip install supervisor

测试安装是否成功:#echo_supervisord_conf
2.创建配置文件

#echo_supervisord_conf > /etc/supervisor/supervisord.conf

3.新建配置文件

#mkdir -m 755 -p /etc/supervisor/conf.d
#cd /etc/supervisor/conf.d
#sudo nano blog.conf
[program:django-blog]
command=gunicorn myblog.wsgi:application -w 4 -b 127.0.0.1:4001 -k gevent --max-requests 500 --access-logfile=access.log --error-logfile=error.log --reload
#django-project名为myblog,server端口为127.0.0.1:4001,记录日志为access.log,error.log,修改过Django代码后,需要重新建立gunicorn连接,否则页面还是维持代码变更前的状态,加入--reload字段,就可以实时显示变更代码了。

directory=/home/ubuntu/Downloads/Fblog 
#项目所在目录
process_name= django-blog
#进程名字
autostart=true
autorestart=true 
#崩掉自动重启
startsecs=3 
#程序重启时候停留在runing状态的秒数
stdot_logfile=log文件

4.引入配置文件

#sudo nano  /etc/supervisor/supervisord.conf

在最下面写

[include]
files = /etc/supervisor/*.d 

5.启动supervisor

#supervisord -c /etc/supervisor/supervisord.conf 或者#supervisord

查看信息:

#supervisorctl

上面的命令会进去supervisor控制台,不懂就help,全在里面。
如果修改了配置文件,需要执行 supervisorctl reload 来重新加载配置文件。
这样,正常的话gunicorn就运行了。报错直接去看日志。

———————————————————————————————————

后来添加了nginx的配置:

server {
    listen 80 default;
    server_name _;
    default_type application/octet-stream;
    gzip on;
    gzip_http_version 1.0;
    gzip_proxied any;
    gzip_min_length 500;
    gzip_disable "MSIE [1-6]\.";
    gzip_types text/plain text/html text/xml text/css
                text/comma-separated-values
                text/javascript application/x-javascript
                application/atom+xml image/jpeg image/gif image/png;

    location /static/ {
        alias 静态文件目录,后面的斜杠必须要/;

    }

    location /media/ {
        alias 媒体文件目录,后面斜杠必须有/;
        expires 30d;
    }

    location / {
        try_files $uri @proxied;
    }

    location @proxied {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_pass 这里填写gunicorn监听的地址;
    }

    access_log log文件;
}

你可能感兴趣的:(记录自己django+supervisor+gunicorn+nginx 的配置过程)