django,uwsgi, nginx部署项目

时间:2021-12-02 21:12:39

在liunx中环境中

对于nginx来说:

 1.先安装nginx

sudo apt-get install nginx

 2.启动nginx服务

sudo /etc/init.d/nginx restart

 3.启动成功之后,可以打开浏览器进行验证,访问地址:127.0.0.1:80

 4.对于nginx来说,存储html路径为:/var/www/html/

对于uwsgi来说:

 1.进行安装:

sudo pip3 install uwsgi

 2.验证

uwsgi --http :9998 --chdir /home/zengsf/project/movie/ --module movie.wsgi

配置文件

 配置uwsgi文件

  1.随便创建一个文件夹

mkdir uwsgi

  2.切换到里面去

cd uwsgi

  3.创建一个ini文件

vim movie_uwsgi.ini

  4.下面是ini里面的配置信息

[uwsgi]
# 和nginx通信的端口
socket=127.0.0.1:8001
# 项目路径
chdir=/home/zengsf/project/movie
# wsgi.py路径
wsgi-file=movie/wsgi.py
# 进程数
processes=4
# 线程数
thread=2
# 本项目占用uwsgi端口
stats=127.0.0.1:8081

 配置nginx文件

  1.切换到相对应的路径中,并且创建.conf文件

# 进入超级模式下
sudo i
# 到相对应得文件路径下
cd /etc/nginx/sites-enabled
# 创建一个.cnf的配置文件
vim project_nginx.conf

  2.在配置文件中的配置信息

server{
        # 监听本项目端口,浏览器输入的端口
        listen 8201;
        # 域名
        server_name movie.com;
    charset utf-8;
    client_max_body_size 75M;
    # 收集项目静态文件路径
    location /static{
        alias /home/zengsf/project/movie/static;
    }
     # 和uwsgi通信端口和项目通信文件uwsgi_params
    location /{
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8001;
    }
}

  3.配置好了之后都要重启一下nginx服务

sudo /etc/init.d/nginx restart

  4.将uwsgi_params文件拷贝到Django项目目录中

cp /etc/nginx/uwsgi_params /home/zengsf/project/movie/

  5.往uwsgi_params中收集静态文件

    1.在settings.py文件中添加(STATIC_ROOT)

STATIC_ROOT = '/home/zengsf/project/movie/static/'
# 注意的是,写了这个就不能写STATIC_DIR

    2.收集静态文件

./manage.py collectstatic

  6.利用uwsgi启动项目

uwsgi --ini movie_uwsgi.ini

部署多个项目

  其实跟部署一个项目一样,只不过就是端口不能重复。