您的位置:首页 > 其它

自己动手写的Web服务器<一>

2012-03-30 23:44 393 查看
背景介绍

书到用时方恨少,工作之后才知道自己的知识有多么的困乏,学识有多么的浅薄。好在我的程序员工作不那么苦逼,每天有大把的时间让我学我学习,经《程序员》的推荐,花大价钱买了一本《深入理解计算机系统》,对于这本书,我的评价是——计算机知识的高品质富矿。于是我拿着这本书开始修炼内功,只恨学校没有使用这本书当教材,只恨自己没有早发现这本书。

言归正传,这个Web服务器出自《深入理解计算机系统》,我只是当打字员敲入电脑,试用和学习了一番,然后拿出来跟大家分享一下,大家如果有疑问去看原书效果更佳。

先把代码贴出来,大家可以先上手试用一下,如果感兴趣可以继续往下了解。这里下载

我的运行环境在Ubuntu11.10下,解压下载文件生成WebServer。

在terminal里进入WebServer目录输入

make

如果编译成功的话,你的目录下会生成tinyServer和tinyThreadServer两个可执行文件,tinyThreadServer是我在tinyServer基础上实现的多线程版。

在terminal里输入

./tinyServer 8080

运行tinyServer,运行正确的话, terminal上会打出

Server Startup, ready bind to [8080]

接下来就可以使用浏览器向WebServer发起http请求了,我使用的firefox浏览器,在地址栏中输入
http://localhost:8080/add?100&1000
浏览器的输出结果是

Welcome to add.com:The Internet addition portal.
The answer is: 100 + 1000 = 1100
Thanks for visiting!

如果要请求静态信息的话,可以将自己写好的html页面放入WebServer/cgi-bin目录下,在地址栏输入
http://localhost:8080/cgi-bin/xxx.html
结果就可以显示出来了。

下次跟大家分享具体的原理和代码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: