Gunicorn Nginx 部署Django
一、首先让项目跑起来;安装Gunicorn和 Nginx。见Nginx + Gunicorn 部署 Django 项目(old)的第一部分和相关安装的内容。
二、设置Gunicorn运行参数并运行。在项目录下建立参数文件gunicorn_c4es.py(自己随便起一个)
gunicorn_c4es.py workers = 3 # 根据你的服务器性能调整工作进程数 # worker_class = 'sync' # 或者使用其他适合你的工作类,如 'gevent' 或 'eventlet' # bind = '127.0.0.1:8000' # 绑定到本地的8000端口,根据需要修改端口号 # bind='172.16.15.199:8000' bind = 'unix:/Xfs_store/c4es/c4eswork.sock'
运行:gunicorn 项目名称.wsgi:application --config 上面的配置文件,如:
gunicorn c4eswork.wsgi:application --config gunicorn_c4es.py
以上操作等价于等价于gunicorn --access-logfile - --workers 2 --bind unix:/c4es/c4eswork.sock c4eswork.wsgi:application
三、配置Nginx。在/etc/nginx/conf.d/下新建个conf文件(文件名自己定)。如:
sudo gedit /etc/nginx/conf.d/nginx_c4es.conf
加入以下配置指令:
server {
# 端口和域名
listen 80;
server_name 172.16.15.199;
client_max_body_size 5M;
# 日志
access_log /Xfs_store/c4es/c4eswork/c4esnginx.access.log;
error_log /Xfs_store/c4es/c4eswork/c4esnginx.error.log;
# gunicorn 中生成的文件的地址
location / {
include proxy_params;
# proxy_pass http://172.16.15.199:8000;
proxy_pass http://unix:/Xfs_store/c4es/c4eswork.sock;
}
# 不记录访问不到 favicon.ico 的报错日志
location = /favicon.ico { access_log off; log_not_found off; }
# static 和 media 的地址
location /static/ {
# root /Xfs_store/c4es/c4eswork/all_static/;
alias /Xfs_store/c4es/c4eswork/all_static/;
}
# location ~\.(gif|jpg|png)$ {
# root /Xfs_store/c4es/c4eswork/media/img/;
# }
location /media/img {
root /Xfs_store/c4es/c4eswork;
# alias /Xfs_store/c4es/c4eswork;
}
}
四、另开一个终端,启动Nginx。
sudo nginx
修改配置指令文件后:
sudo nginx -s reload
五、测试。主要静态文件location指令块的设置是否正确。
浙公网安备 33010602011771号