[Django]学习笔记4:uwsgi+Nginx部署django

140 阅读1分钟

环境: linux ubuntu python 3.8.5 uwsgi 2.0.19.1 nginx 1.18.0

部署配置

uwsgi ini文件

[uwsgi]
; 监听的端口
#http = 127.0.0.1:8080

; 指定和nginx进行套接字通信的方式:端口或文件
socket = 127.0.0.1:8080
; socket = /home/kzzf/project/OfferHelp/OfferHelp.sock

#项目所在目录,和manage.py同级
chdir=/var/www/html/mysite/

; 虚拟环境所在目录
home=/root/django
PYTHONHOME = /root/django/bin/

#主应用中的wsgi文件 模块名
wsgi-file = mysite/wsgi.py

#请求大小
buffer-size = 65536

; 启动一个master进程,来管理其余的子进程
master=True
processes = 4
threads = 2

nginx.conf配置文件

    server {
        #nginx监听的端口不能和django启动的端口一样,否则uswgi会因为nginx占用端口启动失败
        #监听端口
        listen 8888 default_server;
        listen [::]:8888 default_server;

        #root /var/www/html;
        
        #服务器名称
        server_name localhost;

        charset utf-8;

        location / {
                include uwsgi_params;
                uwsgi_pass 127.0.0.1:8080;
                #模块名要保持一致
                uwsgi_param UWSGI_SCRIPT mysite/wsgi.py;
                uwsgi_param UWSGI_CHDIR /var/www/html/mysite/;
                try_files $uri $uri/ =404;
        }
        
        location /static/ {
            #静态文件地址,css,img等。
            alias /www/orange/transfer/static/; 
        }

    }

启动

service nginx start
uwsgi xxxx.ini

浏览器输入: 域名:8888。成功:

image.png