Board logo

标题: [转载代码] Python使用Twisted实现一个简单Web服务器 [打印本页]

作者: Perl    时间: 2012-2-23 21:50     标题: Python使用Twisted实现一个简单Web服务器

作者:梅劲松
版权:本文档为MIT授权
运行环境ython 2.3+Twisted的py-23安装版本

自己实现Web服务器的优点就不用说太多了,主要是能控制具体的实现。也能按照自己的习惯实现互动方式。
而Twisted在tcp以下是C写的,ip和udp部分应该是C和Python的混合产物,而http smtp等则是Python的,自己能很好的扩充。
下面来看个具体的例子:
首先你需要编辑一个html为结尾的文件名放到你的htm目录下。
然后在htm的上一级目录建立一个文件,文件名为web.py,内容如下:

  1. PORT = 80#这个是80,如果你的端口被占用了,换成其他的
  2. from twisted.web.resource import Resource
  3. from twisted.web import server
  4. from twisted.web import static
  5. from twisted.internet import reactor
  6. class ReStructured( Resource ):
  7.   def __init__( self, filename, *a ):
  8.       self.rst = open( filename ).read( )
  9.   def render( self, request ):
  10.       return self.rst
  11. resource = static.File('./htm/')
  12. resource.processors = { '.html'  : ReStructured }
  13. resource.indexNames = [ 'index.html']
  14. reactor.listenTCP(
  15.       PORT,
  16.       server.Site( resource )
  17.       )
  18. reactor.run( )
复制代码


在控制台下进入目录输入 python web.py,然后打开浏览器,输入http://127.0.0.1,看到你的站点了吗?

原文:http://bbs.chinaunix.net/thread-607900-1-1.html




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2