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 相关文章推荐
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
Jun 18 Python
Python pickle模块用法实例
Apr 14 Python
Android基于TCP和URL协议的网络编程示例【附demo源码下载】
Jan 23 Python
tensorflow构建BP神经网络的方法
Mar 12 Python
python3+PyQt5实现支持多线程的页面索引器应用程序
Apr 20 Python
python版本的仿windows计划任务工具
Apr 30 Python
Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
Aug 30 Python
Python如何获得百度统计API的数据并发送邮件示例代码
Jan 27 Python
Tensorflow实现将标签变为one-hot形式
May 22 Python
python使用openpyxl库读写Excel表格的方法(增删改查操作)
May 02 Python
python引入其他文件夹下的py文件具体方法
May 23 Python
Python编解码问题及文本文件处理方法详解
Jun 20 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
Banner程序
2006/10/09 PHP
CI框架整合widget(页面格局)的方法
2016/05/17 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
2017/05/19 PHP
Yii框架参数化查询中IN查询只能查询一个的解决方法
2017/05/20 PHP
详解json在php中的应用
2018/09/30 PHP
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
JavaScript Date对象使用总结
2009/05/14 Javascript
DOM下的节点属性和操作小结
2009/05/14 Javascript
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
JavaScript获得表单target属性的方法
2015/04/02 Javascript
JQuery Mobile实现导航栏和页脚
2016/03/09 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
PHP实现本地图片上传和验证功能
2017/02/27 Javascript
Vue.js实战之使用Vuex + axios发送请求详解
2017/04/04 Javascript
vue-resource拦截器设置头信息的实例
2017/10/27 Javascript
JavaScript实现左侧菜单效果
2017/12/14 Javascript
从零开始在vue-cli4配置自适应vw布局的实现
2020/06/08 Javascript
多种类型jQuery网页验证码插件代码实例
2021/01/09 jQuery
[01:30:55]VG vs Mineski Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
Python3.6 Schedule模块定时任务(实例讲解)
2017/11/09 Python
python 删除列表里所有空格项的方法总结
2018/04/18 Python
对Python w和w+权限的区别详解
2019/01/23 Python
django基于cors解决跨域请求问题详解
2019/08/06 Python
Python使用贪婪算法解决问题
2019/10/22 Python
pycharm 设置项目的根目录教程
2020/02/12 Python
python如何快速生成时间戳
2020/07/21 Python
python上下文管理的使用场景实例讲解
2021/03/03 Python
一道输出判断型Java面试题
2014/10/01 面试题
促销活动总结范文
2014/04/30 职场文书
高中校园广播稿
2014/10/21 职场文书
2014年幼儿园德育工作总结
2014/12/17 职场文书
情侣之间的道歉短信
2015/05/12 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
2016年中秋节寄语大全
2015/12/07 职场文书
NodeJs使用webpack打包项目的方法详解
2022/02/28 NodeJs