网上更多文章是用Django、webpy等框架的前提下,由于我只是用其CGI而不是搞纯web开发,所以暂时不打算用这类框架,直接用flup包(其实大多数框架WSGI也是封装的flup)。

废话不多说,进入正题,先看下需要的环境和工具:

1、Linux2.6(废话- -!)

2、Nginx(需包含fastcgi模块)

4、Python

安装都是些常规方法,就不一一介绍了

nginx的fastcgi配置照搬php的即可。

先上张简单画的原理图

spawn-fcgi是个工具,用来以fastcgi方式开启多个WSGIServer进程。

例:

spawn-fcgi -f /data/WSGIServer.py -a 127.0.0.1 -p 5678 -u www -F 5

-f WSGIServer脚本的决定路径

-a fastcgi绑定的ip

-p fastcgi绑定的端口

-u 已什么身份运行

-F 要启动的进程数(很多人以为是-C,其实那是PHP专用的,这里要用-F)

需要编码的部分就是WSGIServer这里了,贴个简单测试代码

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import flup.server.fcgi as flups

def application(environ, start_response):

"""该函数可以写成模块import导入"""

ret = ""

try:

uri = environ['PATH_INFO']

if uri[-1] == "/":

uri = uri[:-1]

if uri == "":

ret = str(environ)

elif uri == "/sleep":

import time

time.sleep(5)

ret = "sleep: 5 secends"

else:

ret = uri

except Exception, e:

ret = str(e)

status = '200 OK'

response_headers = [('Content-type','text/plain')]

start_response(status, response_headers)

return [ret]

if __name__ == "__main__":

#直接用python运行

#flups.WSGIServer(application, multithreaded=True, multiprocess=False, bindAddress=('127.0.0.1', 5678)).run()

#fastcgi方式运行

flups.WSGIServer(application).run()

nginx fastcgi python_Nginx+FastCGI+Python相关推荐

  1. 127.0.0.1 myz.php,在nginx上用FastCGI解析PHP

    nginx配置文件: Nginx 默认使用  include enable-php.conf;   通过enable-php.conf 来解析PHP,该文件内容如下 location ~ [^/]\. ...

  2. nginx+PHP+PHP-FPM(FastCGI)在Ubuntu上的安装和配置

    nginx+PHP+PHP-FPM(FastCGI)在Ubuntu上的安装和配置 0 之前知识回顾:  1) 目前各种服务器HTTP Server对PHP的支持一共有三种: a.通过HTTPServe ...

  3. wordpress支持MySQL5.5_CentOS 5.5安装Nginx、PHP(FastCGI)、MySQL --搭建LNMP环境安装Wordpress...

    一.总体介绍 系统环境  CentOS release 5.5 (Final)   ,kernel  2.6.18-194.el5 安装 Nginx . PHP(FastCGI)   . MySQL  ...

  4. Nginx+PHP(FastCGI)搭建胜过Apache十倍的Web服务器

    前言:本文是我撰写的关于搭建"Nginx + PHP(FastCGI)"Web服务器的第6篇文章.本系列文章作为国内最早详细介绍 Nginx + PHP 安装.配置.使用的资料之一 ...

  5. [nginx源码]FastCGI模块详解

    目录 1.初识FastCGI协议 1.1消息头 1.2消息体举例 2. 基础知识 2.1 FastCGI配置 2.2FastCGI配置预处理 3.构造FastCGI请求 3.1FastCGI请求结构 ...

  6. php fastcgi进程启动,如何设置nginx的php fastcgi进程数

    九州编程 源码包可以在官方主页上下载.Ubuntu 7.10可以直接通过apt安装,也可以从这里下载最新的deb包:sudo apt-get install nginx如果要自己编译的话,需要确保自己 ...

  7. python django mysql安装_Django+Nginx+uWSGI+Mysql搭建Python Web服务器

    原标题:Django+Nginx+uWSGI+Mysql搭建Python Web服务器 安装的时候全部选择英文,记得以前选择中文的时候安装时出了问题,服务器组件一个不选,Ubuntu安装做的很贴心,基 ...

  8. Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器

    Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器 闲着无聊的时候部署了一个Django项目玩,用vm虚拟机部署的. 准备工作 我使用的系统是Ubuntu16 ...

  9. 通过uwsgi+nginx启动flask的python web程序

    通过uwsgi+nginx启动flask的python web程序 一般我们启动python web程序的时候都是通过python直接启动主文件,测试的时候是可以的,当访问量大的时候就会出问题 pyt ...

  10. nginx fastcgi python_Nginx + webpy 和FastCGI搭建webpy环境

    web.py 是一个轻量级Python web框架,它简单而且功能大.web.py是一个开源项目. 1.所需要的软件: Nginx nginx-1.4.7.tar.gz (需要包含fastcgi和re ...

最新文章

  1. 人类又双叒叕输了,就没人能管管这条“狗”吗?
  2. iOS 学习 - 13.微信分享链接、QQ 分享图片
  3. mysql中rpl_MySQL管理工具MySQL Utilities — mysqlrplcheck(44)
  4. 2021.01.29 Visual QA论文阅读
  5. 地方微信群分享小程序源码,自带流量主独立版
  6. 信号调制产生边频的原理及希尔伯特解调
  7. ubutnu 下SVN 提交时忽略某些文件或文件夹
  8. 遇到一个日志文件变化带来的文件句柄问题
  9. 网络协议IPV6基础知识点集锦
  10. python tkinter frame滚动条_如何在Tkinter中创建带有滚动条的LabelFrame?
  11. java开发业务流程图,什么是业务流程图?业务流程图如何绘制?
  12. 微信小程序二维码生成
  13. 数据库MySQL学习——内含34道MySQL练习题及答案
  14. win10卸载电脑管家就蓝屏_卸载电脑管家时为什么蓝屏
  15. 云开发【云函数的使用】
  16. pap.er for mac高清壁纸下载后的储存位置在哪里?小编告诉你!!
  17. 百度地图批量精度和维度Java,关于百度地图API批量转换成坐标的方法
  18. 计算机管理恢复分区,windows10系统隐藏恢复分区Recovery Image的方法
  19. VC获取系统空闲时间
  20. 整数规划 - 数学建模

热门文章

  1. 如何使用免费工具构建有效的小型APP开发团队
  2. C# DataTable 按数字排序问题
  3. APT***实例研究与企业现有防御体系缺陷分析
  4. 用户空间与内核空间数据交换的方式(3)------seq_file
  5. a small test by windows live writer 2011
  6. Tomcat 连接池的配置
  7. 虚拟机和主机之间建立虚拟磁盘
  8. 【笔记】生成函数与大背包问题
  9. java 二叉树的创建 遍历
  10. 弄懂 JRE、JDK、JVM 之间的区别与联系