一个简单的 Web 服务器 [未完成]

Posted hahahahahahahaha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一个简单的 Web 服务器 [未完成]相关的知识,希望对你有一定的参考价值。

最近学习C++,linux和网络编程,想做个小(mini)项目.  就去搜索引擎, 开源中国, Sourceforge上找http server的项目.

好吧,也去了知乎.    知乎上程序员氛围好, 有不少经验可以借鉴.

 

指导:Build a simple HTTP server in C    (有不会的就问stackoverflow, 所以说如果有一天这网站挂了,网站管理员都不会修了,因为没有可以问啊)

 

资料:

1.RFC: rfc2616 Hypertext Transfer Protocol -- HTTP/1.1   (讲HTTP协议,114页大小)

2.A Practical Guide to Writing Clients and Servers   (15页打印纸的内容,略长略长,慢慢看)

 

前导知识 prerequisites:

  0.网络知识 (看TCP/IP Illustrated)

  1.网络编程  (可以看UNP, Unix Network Programming)

        (或者更好入门的Beej‘s Guide to Network Programming)

  2.系统API   (看APUE, Advanced Programming in the UNIX Environment Third Edition)

(书厚不是问题,反正以后都要看,早点看得了)

 

找到几个轻量级的小项目:1.nweb Tiny Webserver Example (谷歌搜出来的, 200行,C,安全检查)

2.Tiny HTTPd (stackoverflow上有人推荐,500 行,C,支持CGI)

  (CSDN上有人解析源码: 【源码剖析】tinyhttpd —— C 语言实现最简单的 HTTP 服务器 )

3.mongoose  (知乎上一个问题下说到了)

4.lighthttpd    (轻量级,高性能网站,安全、快速、兼容性好并且灵活的web server环境)

  (ChinaUNIX 的 lighttpd-1.4.20源码分析   )

 

 

还有一个问题,阅读别人的代码: 

  1.书:Code Reading  

  2.网页:Tips For Reading Code

 

以上是关于一个简单的 Web 服务器 [未完成]的主要内容,如果未能解决你的问题,请参考以下文章

使用 Nodejs 搭建一个简单的Web服务器

利用node.js搭建简单web服务器的方法教程

WebSocket 简单实现

简单了解request与response

从零构建一个简单的 Python Web框架

C语言实现简单Web服务器