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指令块的设置是否正确。

posted on 2024-04-12 11:19  ldx-wsj  阅读(130)  评论(0)    收藏  举报