twisted实现web服务器

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

PORT = 80#这个是80,如果你的端口被占用了,换成其他的                                                                    
                                                           
                                                                               
from twisted.web.resource import Resource                                      
from twisted.web import server                                                  
from twisted.web import static                                                  
from twisted.internet import reactor
                                                                                                             
                                                     
class ReStructured( Resource ):                                                                                                                                
  def __init__( self, filename, *a ):                                        
      self.rst = open( filename ).read( )                                                                                                              
                                                                               
  def render( self, request ):
      return self.rst              
                                                                               

resource = static.File('./htm/')                                                  
resource.processors = { '.html'  : ReStructured }                              
resource.indexNames = [ 'index.html']                                  
                                                                               
reactor.listenTCP(                                                              
      PORT,                                                                  
      server.Site( resource )                                                
      )                                                                      
reactor.run( )


在控制台下进入目录输入 python web.py(cmd切换到文件所在的目录,直接输入web.py即可),然后打开浏览器,输入http://127.0.0.1/index.htm,看到你的站点了吗?

 

如果你更改了端口,请输入:http://127.0.0.1:port/index.htmhttp://localhost:port/index.htm 注意一点:后缀是htm不是html否则无法显示。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值