Web服务器如何工作?

时间:2009-01-17 19:21:58

标签: webserver

我是一名.NET开发人员,我已经在C#工作了将近3.5年。我想了解网络服务器的工作原理,我不是指65,000英尺的概述。我想了解Web服务器的内部工作原理。

有哪些好资源可以学习Web服务器的工作原理?

4 个答案:

答案 0 :(得分:11)

如果你真的想要了解假设的网络服务器如何工作,请阅读HTTP Spec

一个好工具是fiddler。使用此工具浏览器关于网络并检查浏览器和服务器之间的对话。结合对HTTP规范的阅读,这将使您对网络上的实际情况有一个很好的了解。

如果您想要更进一步,您需要决定您更灵活地想要了解哪个Web服务器。例如,如果您想了解IIS6 / 7,那么David Wang's博客是搜索引擎盖细节的好地方。

答案 1 :(得分:9)

Web服务器实现起来非常简单,并且有几个关于如何构建一个的教程。

这是C#的一个教程:http://www.codeguru.com/csharp/.net/net_general/article.php/c4603,这个教程很好,因为它实现了服务器到原始套接字和HTTP头传递,所以你学到了很多关于HTTP规范的知识。不幸的是,一些教程和库抽象了这一点。

实施自己允许您触及许多主题:

  • 套接字编程
  • HTTP协议(GET / POST)
  • 多线程

一旦您构建了基本的Web服务器,您就可以将服务器和协议扩展到您自己的Web框架中。应该做一个非常酷的宠物项目。

我为Java,C ++和Python做过这个。

答案 2 :(得分:1)

我在寻找其他东西时遇到了这个问题,但是如果你想了解一个网络服务器,我最近开始使用自定义构建的开源Web服务器上的一些博客条目。

它不会教你IIS的确切工作方式,但基本的通信方式是相同的,因此是一个良好的开端。以下是您要查看的链接,包括开源项目的链接:

答案 3 :(得分:0)

IISApache可能是两种最常见的Web服务器实现,但我不确定您在这里寻找什么。您想知道每个如何运行,如何自定义,或者如何自己动手?