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 这种来设定启动端口

   二、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)

            

         

原文地址:https://www.cnblogs.com/echosong/p/3588176.html