ubuntu+uwsgi+nginx部署django项目

一、配置django项目

1、修改配置文件settings.py

DEBUG = False

ALLOW_HOSTS=['*']

#配置静态文件所存放的路径
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

2、收集静态文件

python manager.py collectstatic

3、收集所需依赖库

#收集项目开发中所需的依赖库并输出到requirement.txt文件中
pip freeze > requirement.txt

4、ubuntu中安装所需依赖库

#上一步中所收集到的依赖库
pip install -r requirement.txt

二、uwsgi配置

1、安装uwsgi

pip install uwsgi

2.、创建uwsgi的配置文件并做相应配置

[uwsgi]
#主进程
master = true
#进程数
processes = 4 
#每个进程的线程数
threads=2
#项目的存放路径
chdir = /home/alvin/Projects/code/dailyfresh
#项目中wsgi.py文件所在路径
wsgi-file = dailyfresh/wsgi.py
#如果不借助nginx则用http://ip:port
#http = 192.168.1.8:8089
#如果使用nginx则用socket://ip:port
socket = 192.168.1.8:8089
#pid生成文件
pidfile=uwsgi.pid
#用于存放uwsgi产生的日志的文件,配置后uwsgi为后台启动
daemonize=uwsgi.log

3、启动uwsgi

sudo uwsgi --ini [uwsgi配置文件所在路径]  #如:/home/alvin/uwsgi.ini

4、停止uwsgi

#如果配置了daemonize,则用如下命令
sudo uwsgi --stop uwsgi.pid文件所在路径  #如:/home/alvin/uwsgi.pid

#如果没有配置daemonize 则直接Ctrl + C退出即可

三、Nginx配置

1、打开nginx的配置文件,一般在/usr/local/nginx/conf/nginx.conf

sudo vi /usr/local/nginx/conf/nginx.conf

2、监听80端口,找到http下的server做如下配置

 server {
        listen       80; #监听80端口
        server_name  localhost; #本地主机

        location / {
            include uwsgi_params;#包含uwsgi参数
            #当监测到访问的是本机ip时则转发到如下地址进行请求,即转发给uwsgi服务器
            uwsgi_pass 192.168.1.8:8089;#uwsgi配置文件中配置的地址
        }
        
        #配置django项目的静态文件,当访问的路径中包含static的时候则直接请求本机中静态文件所在路径
        location /static {
            #本机中项目静态文件所在路径,静态文件需提前收集好
           alias /home/alvin/Projects/code/dailyfresh/staticfiles/;
        }

3、启动nginx

#启动nginx服务
sudo /usr/local/nginx/sbin/nginx

#当nginx配置文件有改动时需重新启动nginx
sudo /usr/local/nginx/sbin/nginx -s reload

4、输入本机ip地址测试是否部署成功

猜你喜欢

转载自blog.csdn.net/lixiaosenlin/article/details/103866820
今日推荐