2009-01-17 68 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,但基本的溝通是相同的,因此,這是一個好的開始。這裏是鏈接給你看看,包括鏈接到開源項目: