python webpy 框架环境架设
前几年使用过 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 这种来设定启动端口
IY_WNJ.jpg)
二、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 框架环境架设的更多相关文章
- python bottle框架(WEB开发、运维开发)教程
教程目录 一:python基础(略,基础还是自己看书学吧) 二:bottle基础 python bottle web框架简介 python bottle 框架环境安装 python bottle 框架 ...
- Linux ubantu中安装虚拟/使用环境virtualenv以及python flask框架
今天学习了python flask框架的安装过程以及使用案例,感觉网上讲的东西都没有从我们这种初学者的角度去考虑(哈哈),最后还是奉上心得: 1.安装virtualenv $ sudo apt-get ...
- python网络编程学习笔记(10):webpy框架
转载请注明:@小五义http://www.cnblogs.com/xiaowuyi django和webpy都是python的web开发框架.Django的主要目的是简便.快速的开发数据库驱动的网站. ...
- python flask框架学习(一)——准备工作和环境配置与安装
Flask装备: 学习自:知了课堂Python Flask框架——全栈开发 1.Python版本:3.6 2.Pycharm软件: 3.安装虚拟环境: (1)安装virtualenv: pip ins ...
- Python开源框架
info:更多Django信息url:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC) ...
- 【python】15个最受欢迎的Python开源框架
Django: Python Web应用开发框架 Django 应该是最出名的Python框架,GAE甚至Erlang都有框架受它影响.Django是走大而全的方向,它最出名的是其全自动化的管理后台: ...
- 14个最受欢迎的Python开源框架
本文从GitHub中整理出的14个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框架 Dja ...
- 最受欢迎的15个Python开源框架
GitHub中15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. 1.Django: Python Web应用开发框架 Django 应 ...
- 15个最受欢迎的Python开源框架
以下是伯乐在线从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python Web应用开发框 ...
随机推荐
- ContextLoaderListener和Spring MVC中的DispatcherServlet加载内容的区别【转】
原文地址:https://blog.csdn.net/py_xin/article/details/52052627 ContextLoaderListener和DispatcherServlet都会 ...
- 关于string::size_type
size_type其实是string模板类定义的一种类型之一,它与size_of的用法相似,只是它根据存储的类型返回字符串的长度.对于 string具体化,将根据char返回字符串的长度,在这种情况下 ...
- acm1878欧拉回路
欧拉回路解释 对于本题我们只要把每个点的度进行记录,判断是否存在奇数度的点,如果是就可以判断不是欧拉回路,如果不是就在一个点出发,进行dfs搜索, 看能否走到起点,因为对于欧拉回路是一个闭合的回路,无 ...
- Jade模板引擎学习(一)安装及基本语法
Jade是一款高性能简洁易懂的模板引擎,Jade是Html的Javascript实现,在服务端(NodeJS)及客户端均有支持. 一.功能 客户端支持 超强的可读性 灵活易用的缩进 块扩展 代码默认 ...
- git代码冲突
如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候, 在发布这个配置文件的时候,会发生代码冲突: error: Your local changes to the f ...
- MySQL新建用户,授权
登录MySQL mysql -u root -p 添加新用户 允许本地 IP 访问 localhost, 127.0.0.1 create user 'test'@'localhost' identi ...
- 51Nod 1094 和为k的连续区间 | 水
Input示例 6 10 1 2 3 4 5 6 Output示例 1 4 #include "cstdio" #include "algorithm" #in ...
- UITableView的代理方法
一.点击某个cell调用 /** * 点击了第几行调用 */ -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NS ...
- Chrome切换分辨率
不知道大家是否有遇到在Web开发的时候,老大会让你模拟不同分辨率情况,这时候,可能就有些小小的麻烦,我们可能要不断调整分辨率.是件很崩溃的事情.现在推荐一款Chrome插件.即可实现这个简单的功能. ...
- u3d局域网游戏网络(c# socket select 模型)——续
原文:http://www.cnblogs.com/saucerman/p/5555793.html 因为项目要加语音.语音数据都非常大.所以顺带就把之前写的网络模块一起测试了. 然后发现了一些bug ...