• 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)
    

                

             

  • 相关阅读:
    【JZOJ4616】二进制的世界
    【JZOJ4665】数列
    【JZOJ4811】排队
    2017.08.19【NOIP提高组】模拟赛B组 经济编码
    浅谈匈牙利算法
    2017.08.18【NOIP提高组】模拟赛B组 恭介的法则(rule)
    2017.08.18【NOIP提高组】模拟赛B组 沙耶的玩偶(doll)
    2017.08.15【NOIP提高组】模拟赛B组 单足跳
    2017.08.15【NOIP提高组】模拟赛B组 生日聚餐
    2017.08.12【NOIP提高组】模拟赛B组 巴比伦
  • 原文地址:https://www.cnblogs.com/echosong/p/3588176.html
Copyright © 2020-2023  润新知