文档章节

linux下nginx+python+uwsgi部署总结(django+web.py)

岭南六少
 岭南六少
发布于 2011/08/11 01:00
字数 450
阅读 2128
收藏 5

之前的文章已经提到了 django+fastcgi的运行并不如意(web.py+spawn-fcgi却正常很多……),所以特意抽时间研究了一下uwsgi,试了一下,运行的很好,也很快,哈哈。
所以笔者的所有之前用apache+django搭建的项目(如fuload等)都已经替换成了nginx+django+uwsgi。

一.安装uwsgi

  1. http://projects.unbit.it/uwsgi/wiki/WikiStart#Getit 下载最新版本的uwsg。
  2. 解压后,如果没有安装libxml2,又不想安装的话,那么编辑文件 buildconf/default.ini, 把

    1
    xml_implementation = libxml2

    改成

    1
    xml_implementation = false
  3. 执行编译

    1
    python uwsgiconfig.py --build
  4. 执行安装

    1
    python setup.py install

这样,uwsgi就安装上了~

二.nginx配置
配置要比fastcgi还简单一些:

1
2
3
4
location / { 
    include uwsgi_params;     uwsgi_pass 127...1:9090; }

三.django配置
在mysite的统计目录(即setting.py的上级目录),创建文件uws_app.py:

1
2
3
4
5
6
7
8
9
import sys import os  sys.path.append(os.path.abspath(os.path.dirname(__file__))) os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'  import django.core.handlers.wsgi  
application = django.core.handlers.wsgi.WSGIHandler()

启动uwsgi:

1
uwsgi -s :9090 -w uws_app -p10 -d uws.error &

其实也可以不用写uws_app.py这个文件,直接启动uwsgi:

1
uwsgi --module='django.core.handlers.wsgi:WSGIHandler()' --env DJANGO_SETTINGS_MODULE=mysite.settings -s :9090 -p 10 -d uws.log --touch-reload=uws.tc &

四.web.py配置
创建文件 index.py :

1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/python # -*- coding: utf-8 -*-  import web 
 
urls = ("/.*", "hello")  class hello:
    def GET(self):
        return 'Hello, world!'  
app = web.application(urls, globals()) application = app.wsgifunc()

启动uwsgi:

1
uwsgi -s :9091 -w index -p 2 -d uws.error &

OK,到此为止就整个配置完啦,简单吧!

使用了uwsgi之后的fuload运行也非常稳定:

1


最后是uwsgi的一些文档,大家可以看一下.

uwsgi 启动参数:
http://projects.unbit.it/uwsgi/wiki/Doc

uwsgi 配合django,web.py,flask等:
http://projects.unbit.it/uwsgi/wiki/Example

原创文章,版权所有。转载请注明:转载自Vimer的程序世界 [ http://www.vimer.cn ]

本文链接地址: http://www.vimer.cn/?p=2274

本文转载自:http://www.vimer.cn/?p=2274

岭南六少
粉丝 158
博文 219
码字总数 152952
作品 0
深圳
部门经理
私信 提问
加载中

评论(1)

me坤子
me坤子
mark 留个脚印
RHEL6.5安装 Oracle 11g + udev + ASM安装部署详解

RHEL6.5安装 Oracle 11g + udev + ASM安装部署详解 [日期:2017-05-26] 来源:Linux社区 作者:sound [字体:大 中 小] 最近在学Oracle体系结构等理论知识,在这里总结RHEL6.5下安装 Oracle...

rootliu
2018/11/20
119
0
网络工程师从入门到精通(学习总目录——持续更新)

网络工程师课程体系包含:入门课程、中级课程、高级课程。 一、入门课程:计算机网络技术及应用、Windows server服务器系统管理、活动目录(AD)管理及维护、小型网络组建实战 1、计算机网络...

初雪之路
2018/09/26
0
0
基于vue cli的前端自动部署,自动备份index.html,可版本退回

期望: 希望通过npm命令实现远程服务端部署 部署分测试环境、生产环境 打包部署前必须保证本地代码为最新代码,与git服务器同步 需要保留vue cli的版本管理,上传代码前备份index.html,方便...

hkaikai
11/08
70
0
Solr学习笔记 在Tomcat上部署运行Solr

上一篇我们初识了Solr并且学习了Jetty的启动方式,查看了Solr的管理界面,这一篇我们来实现在Tomcat上部署运行Solr。 部署环境: window7 jdk1.6.014 Solr-4.7.2 tomcat-6.0.37 Solr的安装配...

Zero零_度
2015/04/13
445
0
PostgreSQL培训系列直播—第二章:安装

内容概要 1、介绍Linux环境的数据库相关内核参数、存储、文件系统、资源限制、CGROUP资源隔离等相关配置与优化 2、介绍Linux下PostgreSQL的编译安装 3、介绍Linux下PostgreSQL的rpm安装 目标...

德哥
03/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Kotlin基础语法学习

安装好安卓studio,以及插件支持Kotlin 就可以在创建项目的时候选择 Kotlin语言了。 https://www.jianshu.com/p/4ab13691d681 参考手册: https://www.runoob.com/kotlin/otlin-android-setu...

T型人才追梦者
18分钟前
4
0
java实现简单计算器

1.概述 之前作者写过一篇文章,也是关于计算器的,用的是C++与Qt,链接在这里 这次用java的swing写的(这差距好像有点大,好吧是qt太强了). 先上图: 2.UI 总体布局使用流布局. (1)文本框 文本框就...

Blueeeeeee
20分钟前
4
0
x004-python中循环结构

循环结构 Python中构造循环结构有两种做法,一种是for-in循环,一种是while循环 for in range(101)可以产生一个0到100的整数序列range(1, 100)可以产生一个1到99的整数序列range(1, 100, ...

伟大源于勇敢的开始
24分钟前
5
0
纯CSS实现DIV悬浮(固定位置)

纯CSS实现的DIV悬浮效果(固定位置),兼容常用的浏览器:IE8、360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗等。效果如下: 实现代码: <!DOCTYPE html> <html> <head> <meta ...

独钓渔
59分钟前
5
0
OSChina 周二乱弹 —— 给我来个女菩萨

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @这次装个文艺青年吧 :#今日歌曲推荐#分享XXXTENTACION/Travis Barker的单曲《Pain = BESTFRIEND》: 《Pain = BESTFRIEND》- XXXTENTACION/...

小小编辑
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部