uwsgi+nginx部署Django项目操作示例


Posted in Python onDecember 04, 2018

本文实例讲述了uwsgi+nginx部署Django项目操作。分享给大家供大家参考,具体如下:

uWSGI概述

uWSGI 是一个全功能的 HTTP 服务器,可以把 HTTP 协议转化成语言支持的网络协议。

安装uwsgi

使用pip安装即可

pip install uwsgi

安装完成后可测试

#vim test.py
def application(env, start_response):
  start_response('200 OK', [('Content-Type','text/html')])
  return [b"Hello World"]

然后运行:

uwsgi --http :9090 --wsgi-file test.py

现在访问 ip:9090,如果出现Hello World说明安装成功

创建一个django项目

django-admin.py startproject hello

然后你的目录是这样的

hello /
├── hello
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── manage.py

确保Django应用能正常启动

配置uwsgi.ini

#] vim /etc/uwsgi.ini #此文件可放在其它地方
[uwsgi]
chdir=/work/hello/ #项目目录
uid=root #可换成其它用户和组
gid=root
module=hello.wsgi:application
socket=/work/hello/uwsgi.sock
master=true
workers=5
pidfile=/work/hello/uwsgi.pid
vacuum=true
thunder-lock=true
enable-threads=true
harakiri=30
post-buffering=4096
daemonize=/work/hello/uwsgi.log

uwsgi相关命令

启动uwsgi:uwsgi --ini /path/uwsgi.ini
停止uwsgi:uwsgi --stop /path/uwsgi.pid
重新加载配置:uwsgi --reload /path/uwsgi.pid

nginx配置

server {
  listen 8080;
  location /static {
    alias /work/hello/static; #Django project's static files
  }
  location / {
    include uwsgi_params;
    uwsgi_connect_timeout 30;
    uwsgi_pass unix:/work/hello/uwsgi.sock;
  }
}

先启动uwsgi,启动nginx,一个简单的nginx + uwsgi + django就完成了

uwsgi+nginx部署Django项目操作示例

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
从零学python系列之新版本导入httplib模块报ImportError解决方案
May 23 Python
使用Python的Twisted框架构建非阻塞下载程序的实例教程
May 25 Python
再谈Python中的字符串与字符编码(推荐)
Dec 14 Python
Python中如何优雅的合并两个字典(dict)方法示例
Aug 09 Python
Python3之文件读写操作的实例讲解
Jan 23 Python
python学习基础之循环import及import过程
Apr 22 Python
Django 源码WSGI剖析过程详解
Aug 05 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
Aug 20 Python
python实现文件的分割与合并
Aug 29 Python
python用quad、dblquad实现一维二维积分的实例详解
Nov 20 Python
浅析python 通⽤爬⾍和聚焦爬⾍
Sep 28 Python
解决jupyter notebook图片显示模糊和保存清晰图片的操作
Apr 24 Python
解决python中无法自动补全代码的问题
Dec 04 #Python
Django框架实现的简单分页功能示例
Dec 04 #Python
Django开发的简易留言板案例详解
Dec 04 #Python
对python的bytes类型数据split分割切片方法
Dec 04 #Python
Python 从相对路径下import的方法
Dec 04 #Python
浅谈python中str字符串和unicode对象字符串的拼接问题
Dec 04 #Python
Python推导式简单示例【列表推导式、字典推导式与集合推导式】
Dec 04 #Python
You might like
NT IIS下用ODBC连接数据库
2006/10/09 PHP
phpMyAdmin链接MySql错误 个人解决方案
2009/12/28 PHP
PHP使用GIFEncoder类处理gif图片实例
2014/07/01 PHP
javascript 词法作用域和闭包分析说明
2010/08/12 Javascript
在vs2010中调试javascript代码方法
2011/02/11 Javascript
addEventListener和attachEvent二者绑定的执行函数中的this不相同
2012/12/09 Javascript
js弹出模式对话框,并接收回传值的方法
2013/03/12 Javascript
js字母大小写转换实现方法总结
2013/11/13 Javascript
jquery实现手风琴效果实例代码
2013/11/15 Javascript
通过JS来动态的修改url,实现对url的增删查改
2014/09/01 Javascript
jquery实现个人中心导航菜单效果和美观都非常不错
2014/09/02 Javascript
JavaScript中setTimeout和setInterval函数的传参及调用
2016/03/11 Javascript
快速掌握Node.js事件驱动模型
2016/03/21 Javascript
jquery操作ID带有变量的节点实例
2016/12/07 Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
2017/04/01 jQuery
layer弹出层 iframe层去掉滚动条的实例代码
2018/08/17 Javascript
中级前端工程师必须要掌握的27个JavaScript 技巧(干货总结)
2019/09/23 Javascript
jquery ajax 请求小技巧实例分析
2019/11/11 jQuery
vue实现表单未编辑或未保存离开弹窗提示功能
2020/04/08 Javascript
[01:25]DOTA2超级联赛专访iG 将调整状态找回自己
2013/06/05 DOTA
python 动态加载的实现方法
2017/12/22 Python
python画折线图的程序
2018/07/26 Python
Flask之请求钩子的实现
2018/12/23 Python
python爬虫利用selenium实现自动翻页爬取某鱼数据的思路详解
2020/12/22 Python
英国最大的女性服装零售商:Dorothy Perkins
2017/03/30 全球购物
面向对象编程是如何提高软件开发水平的
2014/05/06 面试题
师德模范事迹材料
2014/06/03 职场文书
预备党员转正考核材料
2014/06/03 职场文书
课前一分钟演讲稿
2014/08/26 职场文书
反四风个人对照检查材料思想汇报
2014/09/25 职场文书
个人诉讼委托书范本
2014/10/17 职场文书
2014年纪委工作总结
2014/12/05 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
员工考勤管理制度
2015/08/06 职场文书
MySQL触发器的使用
2021/05/24 MySQL
Ajax实现异步加载数据
2021/11/17 Javascript