Centos7部署Django+Uwsgi+Nginx环境

Posted hulue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos7部署Django+Uwsgi+Nginx环境相关的知识,希望对你有一定的参考价值。

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

 安装wget工具

yum install -y wget

 安装nginx

链接:https://www.cnblogs.com/hulue/p/9171995.html

安装完成后确定可以访问到nginx页面

然后安装python3及django+uwsgi

#安装的python3.6
wget https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tgz
tar xf Python-3.6.6.tgz 
cd Python-3.6.6
./configure --prefix=/usr/local/python3
make && make install

#建python3软链接,python2和python3共存的
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python3

#看能否运行python3
python3
    Python 3.6.6 (default, Oct 18 2018, 15:49:46) 
    [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linux
    Type "help", "copyright", "credits" or "license" for more information.


#建pip3软链接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

#通过pip3安装django和uwsgi
pip3 install django    #最新版2.1.2
pip3 install uwsgi

#建uwsgi软链接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

 配置django项目

#安装django项目需要的包
pip3 install psutil
pip3 install include

mkdir /mnt/www/
cd /mnt/www/

#我通过xshell本地上传项目,项目名:cmdb1,app名:cmdb1
yum install -y lrzsz
rz
unzip cmdb1
#将django项目的表提交到数据库
cd cmdb1
python3 manage.py makemigrations
python3 manage.py migrate

#直接用django运行项目
python3 manage.py runserver “主机IP”:9999

#然后使用浏览器访问 “主机IP”:9999,看是否能访问的

 编辑uwsgi启动django项目文件

vim cmdb1.xml

   <uwsgi>
   <socket>127.0.0.1:9999</socket><!-- 内部端口,自定义 -->
   <chdir>/mnt/www/cmdb1/</chdir><!-- 项目路径 -->
   <module>cmdb1.wsgi</module>
   <processes>2</processes> <!-- 进程数 -->
   <daemonize>uwsgi.log</daemonize><!-- 日志文件 -->
   </uwsgi>

 编辑nginx配置文件

 

vim /application/nginx/conf/nginx.conf

    location / {
       include uwsgi_params;
       uwsgi_pass 127.0.0.1:9999;
       uwsgi_param UWSGI_SCRIPT cmdb1.wsgi;
       uwsgi_param UWSGI_CHDIR /mnt/www/cmdb1;
           
    }
    location /static/ {
    alias /mnt/www/cmdb1/static/; 
    }

 运行服务

#启动uwsgi + django ,一起启动的,不用单独启动了
uswgi -x cmdb1.xml
#启动nginx
#先检查配置文件没有问题再启动
/application/nginx/sbin/nginx -t
/application/nginx/sbin/nginx -s reload  #重新启动


#然后访问ngxin的80端口就可以访问到了

 

以上是关于Centos7部署Django+Uwsgi+Nginx环境的主要内容,如果未能解决你的问题,请参考以下文章

centos7下采用Nginx+uwsgi来部署django

详解django+Nginx+uwsgi 云服务器项目部署

Centos7部署Django+Uwsgi+Nginx环境

阿里云 centos7 django + uWSGI+Nginx + python3 部署攻略

[linux]centos7.4部署django+Uwsgi+Nginx

centos7下部署Django(nginx+uwsgi+django+python3)