Centos部署django服务nginx+uwsgi的方法


Posted in Python onJanuary 02, 2019

1.安装python3

yum -y install wget gcc make zlib-devel readline-devel bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz
xz -d Python-3.6.1.tar.xz
tar -xvf Python-3.6.1.tar
cd Python-3.6.1
./configure --prefix=/usr/local/python3.6 --enable-optimizations
make
make install
ln -s /usr/local/python3.6/bin/python3 /usr/bin/python3
 ln -s /usr/local/python3.6/bin/pip3 /usr/bin/pip3

这是通过编译的方式来安装的

输入 python3 ?version 和 pip3 ?version 进行测试

2. 安装nginx

sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
sudo yum install -y nginx
sudo systemctl start nginx.service

通过你的域名或IP来访问你的Web页面来预览一下Nginx的默认页​面进行测试

3.下载代码,上传到服务器的/var/www 目录

4. 安装依赖

pip3 install django
pip3 install uwsgi
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3

5. 独立运行进行测试

cd /var/www/dexundjango
python3 manage.py runserver 0.0.0.0:8014

测试通过后,Ctrl + C 停止运行

6.uwsgi

sudo mkdir -p /etc/uwsgi/sites
sudo mkdir -p /var/log/uwsgi
cd /etc/uwsgi/sites
sudo vi /etc/uwsgi/sites/mysite.ini
[uwsgi]
socket = 127.0.0.1:10000
chdir=/var/www/dexundjango
module=mysite.wsgi:application
master=True
pidfile=/tmp/project-master.pid
vacuum=True
max-requests=5000
daemonize=/var/log/uwsgi/mysite.log

7. nginx 配置

vi /usr/local/nginx/conf/nginx.conf (根据本地的配置路径)
find / -name uwsgi_params 来替换下面的uwsgi_params路径
server {
  listen 8014; #暴露给外部访问的端口
  server_name localhost;
    charset utf-8;
  location / {
    include /usr/local/nginx/conf/uwsgi_params;
    uwsgi_pass 127.0.0.1:10000; # 必须和uwsgi.ini配置的端口一致
  }
  location /static/ {
    alias /home/www/dexundjango/trade/static/; #项目静态路径设置
  }

8. 启动uwsgi

uwsgi3 --ini /etc/uwsgi/sites/mysite.ini

9. 开机启动uwsgi

vi /etc/init.d/uwsgi
#!/bin/bash
# chkconfig: - 85 15
uwsgi=/usr/bin/uwsgi3
api_conf=/etc/uwsgi/sites/mysite.ini

case $1 in
  start)
    echo -n "Starting uWsgi"
    nohup $uwsgi -i $api_conf >/var/log/uwsgi/project-api.log 2>&1 &
    echo " done"
  ;;

  stop)
    echo -n "Stopping uWsgi"
    killall -9 uwsgi
    echo " done"
  ;;

  restart)
    $0 stop
    $0 start
  ;;

  show)
    ps -ef|grep uwsgi
  ;;

  *)
    echo -n "Usage: $0 {start|restart|stop|show}"
  ;;

esac
chmod +x /etc/init.d/uwsgi
chkconfig --add uwsgi
chkconfig uwsgi on

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用item()方法遍历字典的例子
Aug 26 Python
Python函数嵌套实例
Sep 23 Python
Python实现的破解字符串找茬游戏算法示例
Sep 25 Python
python 通过xml获取测试节点和属性的实例
Mar 31 Python
python爬取基于m3u8协议的ts文件并合并
Apr 26 Python
flask框架路由常用定义方式总结
Jul 23 Python
Python在OpenCV里实现极坐标变换功能
Sep 02 Python
如何基于Python创建目录文件夹
Dec 31 Python
Python面向对象之私有属性和私有方法应用案例分析
Dec 31 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
Python中zip函数如何使用
Jun 04 Python
python数据可视化使用pyfinance分析证券收益示例详解
Nov 20 Python
Python 一句话生成字母表的方法
Jan 02 #Python
使用python将请求的requests headers参数格式化方法
Jan 02 #Python
浅谈python requests 的put, post 请求参数的问题
Jan 02 #Python
Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法
Apr 18 #Python
Python装饰器语法糖
Jan 02 #Python
Python WEB应用部署的实现方法
Jan 02 #Python
Python功能点实现:函数级/代码块级计时器
Jan 02 #Python
You might like
PHP编码规范-php coding standard
2007/03/16 PHP
php 的加密函数 md5,crypt,base64_encode 等使用介绍
2012/04/09 PHP
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
2014/09/27 PHP
PHP实现根据图片色界在不同位置加水印的方法
2015/08/08 PHP
WordPress主题制作中自定义头部的相关PHP函数解析
2016/01/08 PHP
jQuery 前的按键判断代码
2010/03/19 Javascript
jquery下为Event handler传递动态参数的代码
2011/01/06 Javascript
屏蔽网页右键复制和ctrl+c复制的js代码
2013/01/04 Javascript
验证码在IE中不刷新而谷歌等浏览器正常的解决方案
2014/03/18 Javascript
javascript中Date format(js日期格式化)方法小结
2015/12/17 Javascript
jquery通过name属性取值的简单实现方法
2016/06/20 Javascript
jQuery Validate验证框架详解(推荐)
2016/12/17 Javascript
jQuery扇形定时器插件pietimer使用方法详解
2017/07/18 jQuery
JQuery表单元素取值赋值方法总结
2020/05/12 jQuery
原生js实现自定义滚动条组件
2021/01/20 Javascript
[01:09:10]NB vs Liquid Supermajor小组赛 A组胜者组决赛 BO3 第一场 6.2
2018/06/04 DOTA
分析在Python中何种情况下需要使用断言
2015/04/01 Python
深入了解Python数据类型之列表
2016/06/24 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
Python调用服务接口的实例
2019/01/03 Python
关于阿里云oss获取sts凭证 app直传 python的实例
2019/08/20 Python
Python实现朴素贝叶斯的学习与分类过程解析
2019/08/24 Python
Python实现多线程/多进程的TCP服务器
2019/09/03 Python
意大利制造的西装、衬衫和针对男士量身定制的服装:Lanieri
2018/04/08 全球购物
《诺贝尔》教学反思
2014/02/17 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
市场营销求职信范文
2014/02/21 职场文书
软件项目开发计划书
2014/05/01 职场文书
优秀家长事迹材料
2014/05/17 职场文书
团干部培训方案
2014/06/03 职场文书
大型主题婚礼活动策划方案
2014/09/15 职场文书
2015年世界无烟日演讲稿
2015/03/18 职场文书
培训督导岗位职责
2015/04/10 职场文书
2015年党小组工作总结
2015/05/26 职场文书
Python实现日志实时监测的示例详解
2022/04/06 Python
CSS使用SVG实现动态分布的圆环发散路径动画
2022/12/24 HTML / CSS