2009-01-17 69 views
15

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

什么是一些很好的资源来了解Web服务器如何工作的细节?

回答

10

如果你真的想要一个web服务器如何假设工作的细节请阅读HTTP Spec

一个好工具应该是fiddler。使用这个关于网络的工具浏览器并检查浏览器和服务器之间的对话。结合对HTTP规范的阅读,这将使您对网络上真正发生的事情有一个很好的认识。

如果你想更进一步,你需要决定哪个网站服务器,你spcecifically想更好地理解。例如,如果您想了解IIS6/7,那么David Wang's博客是搜索隐藏详细信息的好地方。

9

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

这里是C#的这样一个教程:http://www.codeguru.com/csharp/.net/net_general/article.php/c4603,本教程很好,因为它实现了服务器直到原始套接字和HTTP头传递,因此您了解了很多关于HTTP规范。不幸的是,一些教程和图书馆将此抽象出来。

实现你自己让你触动很多主题:

  • Socket编程
  • HTTP协议(GET/POST)
  • 多线程

而一旦你得到一个基本的建立webserver你可以将你的服务器和协议扩展到你自己的web框架中。应该制作一个非常酷的宠物项目。

我已经为Java,C++和Python做了这个。

+0

链接不再存在 – 2016-07-27 16:30:41

0

IISApache可能是两个最常见的Web服务器实现,尽管我不确定您在此寻找什么。你想知道每一个如何运行,如何定制它,或如何推出自己的?

1

我只是在寻找别的东西的时候发生了这个问题,但如果你想了解一个Web服务器,我最近开始通过定制的开源Web服务器开始一个博客条目。

它不会教你如何运作IIS,但基本的沟通是相同的,因此,这是一个好的开始。这里是链接给你看看,包括链接到开源项目: