基于Python实现的轻量级WebServer-Yorserver1.0
准备在小组内部做一次《HTTP协议分析》的培训,为了不受限于Request header与response header的内容,想更深入了解服务器端是如何响应、处理一个请求的,花了几天时间写了Yorserver,目前基本的功能都实现,功能清单如下:
1、支持自定义response服务及协议版本;
2、支持Expires及max-age的功能;
3、支持多进程或线程开启;
4、支持错误页及默认页配置;
5、支持access_log及error_log配置;
6、支持gzip压缩配置;
7、支持安全套连接服务HTTPS;
8、支持HTTP MIME自定义配置;
9、支持php、perl、python脚本cgi访问;
10、支持配置文件。
(Centos6.*环境测试通过)
一、配置文件说明yorserver.conf
程序截图
1、访问日志
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](http://liuts-blog.b0.upaiyun.com/201304/1366039352_9551647c.jpg)
2、目录列表
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](attachment.php?fid=335)
3、gzip压缩
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](attachment.php?fid=336)
4、HTTPS支持
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](attachment.php?fid=337)
5、PHP CGI
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](attachment.php?fid=338)
6、python CGI
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](attachment.php?fid=339)
三、安装
https://github.com/yorkoliu/pyauto/tree/master/%E7%AC%AC%E5%85%AB%E7%AB%A0
四、在线测试(可启用httpwatch查看效果)
http://blog.liuts.com:8080/
http://blog.liuts.com:8080/cgi-bin/index.pl
http://blog.liuts.com:8080/cgi-bin/index.php
http://blog.liuts.com:8080/cgi-bin/index.py
1、支持自定义response服务及协议版本;
2、支持Expires及max-age的功能;
3、支持多进程或线程开启;
4、支持错误页及默认页配置;
5、支持access_log及error_log配置;
6、支持gzip压缩配置;
7、支持安全套连接服务HTTPS;
8、支持HTTP MIME自定义配置;
9、支持php、perl、python脚本cgi访问;
10、支持配置文件。
(Centos6.*环境测试通过)
一、配置文件说明yorserver.conf
程序截图
1、访问日志
![点击在新窗口中浏览此图片 点击在新窗口中浏览此图片](http://liuts-blog.b0.upaiyun.com/201304/1366039352_9551647c.jpg)
2、目录列表
3、gzip压缩
4、HTTPS支持
5、PHP CGI
6、python CGI
三、安装
https://github.com/yorkoliu/pyauto/tree/master/%E7%AC%AC%E5%85%AB%E7%AB%A0
四、在线测试(可启用httpwatch查看效果)
http://blog.liuts.com:8080/
http://blog.liuts.com:8080/cgi-bin/index.pl
http://blog.liuts.com:8080/cgi-bin/index.php
http://blog.liuts.com:8080/cgi-bin/index.py
胶水
![给他/她发邮件 Email](template/neowin2/images/email.gif)
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2014/07/23 09:33
呵呵,占个位。。。
koy
![给他/她发邮件 Email](template/neowin2/images/email.gif)
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2014/06/23 16:14
@燕十三~~tar包里面是编译后的,不是源代码
刘天斯 回复于 2014/06/23 20:07
对头。
anom
2014/05/08 17:47
yorserver看上去写的不错,没看到源代码在哪里,还有可执行文件是用什么软件生成的
燕十三
![给他/她发邮件 Email](template/neowin2/images/email.gif)
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2014/05/07 17:32
无语,源码都给了还要怎么才叫开源呢。。。。。
ccav
![给他/她发邮件 Email](template/neowin2/images/email.gif)
2014/01/29 23:02
代码能开源吗?很感兴趣!
天津装饰
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2013/08/25 08:34
这个量级还是挺好的
视频贺卡
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2013/07/29 09:16
这个轻量级很有意思也
台式万用表
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2013/07/14 10:51
这个还是挺好的啊
lele
![给他/她发邮件 Email](template/neowin2/images/email.gif)
![访问他/她的主页 Homepage](template/neowin2/images/homepage.gif)
2013/05/11 16:31
博主用的调试器很不错,之前只有用到3.1版的。。博主的是正版的吧?
slevin
2013/05/04 20:27
同上,强烈要求开源!看具体到底怎么实现的!
icecream
2013/04/12 23:35
不开源吗?
分页: 1/1
1
![第一页 第一页](template/neowin2/images/arrows/doubleleft.gif)
![最后页 最后页](template/neowin2/images/arrows/doubleright.gif)