前几年使用过 webpy做个些小东西,今天有个东西从拾webpy。但是基本上都忘记了,还是那句古话“好记性不如烂笔头”。这里把相应的步骤梳理下。

前提: 操作系统 windows

一、webpy 方面

  1、 安装python

    1)大家喜欢使用的一般是2.7版本,相对来说比较稳定的一个版本 安装路径:c:/python27

2)配置计算机环境变量加入c:/python27路径

2、webpy 安装

1)下载 地址 http://webpy.org/static/web.py-0.37.tar.gz 

2)随便解压到一个路径(安装后就不需要了) 我解压到D:/webpy

3)cmd 命令  cd D:/webpy 然后运行安装命令

python setup.py install

4)import web 建议安装是否成功

3、写第一个demo

1)webpy有内置的服务,我们写一下代码保存成code.py文件

import web #这条语句会导入web.py模块。

urls = (
'/', 'index'
)
#这行表示我们要URL/(首页)被一个叫index的类处理 app = web.application(urls, globals())
#会告诉web.py去创建一个基于我们刚提交的URL列表的application。这个application会在这个文件的全局命名空间中查找对应类 class index:
def GET(self):
return "Hello, world!"
#当有人用GET请求/时,这个GET函数随时会被web.py调用
if __name__ == "__main__": app.run()
#这会告诉web.py为我们启动上面我们写的应用

2.保存code.py 然后cmd执行 python code.py

3、打开浏览器输入 localhost:8080就可以看到上面的结果

    

注意默认端口为 :8080 可以通过 python code.py 12343 这种来设定启动端口

二、Http服务器环境(nginx+(fastcgi)flup+(wsgi)webpy)

1、Spawn-fcgi 1.6.2(管理fastcig进程 指支持liunx操作系统)

spawn-fcig

spawn-fcgi -d /path/to/www -f /path/to/www/index.py -a 127.0.0.1 -p 9002

启动

spawn-fcgi -d /path/to/www -f /path/to/www/index.py -a 127.0.0.1 -p 9002

关闭

#!/bin/sh
kill `pgrep -f "python /path/to/www/index.py"`

    2、Flup (实现python web.server)

webpy的Index 文件加入这一行

if __name__ == "__main__":
web.wsgi.runwsgi = lambda func, addr=None: web.wsgi.runfcgi(func, addr)
app.run()

备注: fastcgi  web服务跟 应用程序的标准, wsgi (PythonWebServerGatewayInterface) 为 flup 和 python直接的标准

错误收集:

配置 nginx + spawn + flup + web.py

1、安装web.py 、flup都比较容易
python setup.py install
2、安装 spawn 1.6.3
tar zxf spawn-fcgi-1.6.3.tar.gz
cd spawn-fcgi-1.6.3
./configure --prefix=/dicc/spawn
make && make install
spawn-fcgi命令启动:
/dicc/spawn/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -u fcgi -g fcgi -f /dicc/php/bin/php-cgi -C 50 启动运行的时候一定要 :
/dicc/spawn/bin/spawn-fcgi -d /www/web/default/ -f /www/web/default/index.py -a 127.0.0.1 -p 9002
3、 启动webpy cgi:
sudo spawn-fcgi -d /opt/www/python/pylog/ -f /opt/www/python/pylog/index.py -a 127.0.0.1 -p 9002
出错:
spawn-fcgi: child exited with: 126
执行 chmod +x /opt/www/python/pylog/index.py
启动成功:
spawn-fcgi: child spawned successfully: PID: 9208
查看端口是否存在
$ netstat -ano |grep 9002
tcp 0 0 127.0.0.1:9002 0.0.0.0:* LISTEN 关闭 (0.00/0/0)

python webpy 框架环境架设的更多相关文章

  1. python bottle框架(WEB开发、运维开发)教程

    教程目录 一:python基础(略,基础还是自己看书学吧) 二:bottle基础 python bottle web框架简介 python bottle 框架环境安装 python bottle 框架 ...

  2. Linux ubantu中安装虚拟/使用环境virtualenv以及python flask框架

    今天学习了python flask框架的安装过程以及使用案例,感觉网上讲的东西都没有从我们这种初学者的角度去考虑(哈哈),最后还是奉上心得: 1.安装virtualenv $ sudo apt-get ...

  3. python网络编程学习笔记(10):webpy框架

    转载请注明:@小五义http://www.cnblogs.com/xiaowuyi django和webpy都是python的web开发框架.Django的主要目的是简便.快速的开发数据库驱动的网站. ...

  4. python flask框架学习(一)——准备工作和环境配置与安装

    Flask装备: 学习自:知了课堂Python Flask框架——全栈开发 1.Python版本:3.6 2.Pycharm软件: 3.安装虚拟环境: (1)安装virtualenv: pip ins ...

  5. Python开源框架

    info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...

  6. 【python】15个最受欢迎的Python开源框架

    Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响.Django是走大而全的方向,它最出名的是其全自动化的管理后台: ...

  7. 14个最受欢迎的Python开源框架

    本文从GitHub中整理出的14个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框架 Dja ...

  8. 最受欢迎的15个Python开源框架

    GitHub中15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. 1.Django: Python Web应用开发框架 Django 应 ...

  9. 15个最受欢迎的Python开源框架

    以下是伯乐在线从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框 ...

随机推荐

  1. ubuntu下如何控制风扇速度?

    1.安装lm-sensors  (https://apps.ubuntu.com/cat/applications/lm-sensors/)和fancontrol(https://apps.ubunt ...

  2. POJ1236:Network of Schools (思维+Tarjan缩点)

    Network of Schools Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 24880   Accepted: 99 ...

  3. SSH客户端,FinalShell服务器管理,远程桌面加速软件,支持Windows,Mac OS X,Linux,版本2.6.3.1

    FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求. 用户QQ群 342045988 Windows版下载地址:http:/ ...

  4. 如何写出高性能DOM?

    为什么要写高性能DOM? 一个网站,在页面上承载最多内容的就是DOM,而且无论是我们通过加载JS.加载图片,他们也是通过写HTML标签来实现的.而我们性能优化要做的无非就是几大块: 站点的网络消耗 D ...

  5. 51Nod 1001数组中和等于K的数对

    Input示例 8 9 -1 6 5 3 4 2 9 0 8 Output示例 -1 9 0 8 2 6 3 5 first try: #include "bits/stdc++.h&quo ...

  6. Item 9 覆盖equals时总要覆盖hashCode

    为什么覆盖equals时,总要覆盖hashCode?   原因是,根据Object规范: 如果两个对象根据equals(Object)方法比较是相等的,那么调用这两个对象中任意一个对象的hashCod ...

  7. Python eval 函数说明

    eval(str [,globals [,locals ]]) -- 函数将字符串str当成有效Python表达式来求值,并返回计算结果. 例 :  eval('3+4')         ==> ...

  8. metlnfo 5.3.1 sql注入复现

    首先还是要说的是metlnfo是伪全局变量机制 所以如下: /admin/include/global.func.php function save_met_cookie(){ global $met ...

  9. WAMP Apache 2.5 配置虚拟主机

    1.在 Apache 的安装目录下 conf/httpd.conf 文件中搜索 hosts,去掉 Include 前面的 “#” 号后,即可启用虚拟主机. # Virtual hosts #Inclu ...

  10. CSS浮动和清除

    float:让元素浮动,取值:left(左浮动).right(右浮动) clear:清除浮动,取值:left(清除左浮动).right(清除右浮动).both(同时清除上面的左浮动和右浮动) 1.CS ...