﻿# 瞭解 IIS 接受 HTTP 要求的完整過程

我想不管是開發人員或是 IT 人員都應該仔細瞭解 IIS 接受 HTTP 要求的完整過程，這樣不管在開發、除錯或部署時都可以比較能掌握狀況，否則遇到棘手問題時常常都是到處亂試，在測試機上試就罷了，若在正式機上面亂試一通，那才是夢魘吧。

我有一次到客戶那邊安裝網站時，發現客戶的 IIS 設定所有站台都是可讀可寫，而且從 C:\\ 與 D:\\ 每個磁碟機根目錄起所有的目錄檔案都是 **Everyone** 可讀可寫，我剛看到時立即傻眼，我問客戶的網管為什麼要這樣設定，他回我說：「IIS 不都是這樣設定的嗎？我們的廠商每次來都是這樣設定的耶。」，天啊......我只能說：「..... OK ...... God Bless You ......」

我在網路上找到兩張關於 IIS 接受 HTTP 要求的完整過程的圖示，一張講解 IIS 6.0，另一張講解 IIS 7.0，講解的非常詳細，給大家參考。圖片有點大，各位可以另存新檔下載。

**IIS 6.0 HTTP Request Processing**

[![IIS 6.0 HTTP Request Processing](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/557bfb12aeb244fa9e00-IIS6RequestProcessing_thumb.jpg)](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/c62a2f81bb5901704a91-IIS6RequestProcessing_2.jpg)

**IIS 7.0 HTTP Request Processing**

 [![IIS 7.0 HTTP Request Processing](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/fbe688f66927d6ca07a1-IIS7RequestFlow_thumb.jpg)](https://stwillblogassets.blob.core.windows.net/files/images/external/stwillblogassets.blob.core.windows.net/13aeb82c2ed68ec30b83-IIS7RequestFlow_2.jpg)

**相關連結**

-   [各版本IIS下ASP.net請求處理過程](http://www.wowbox.com.tw/blog/article.asp?id=2986)
-   [ASP.NET Internals – IIS and the Process Model](https://www.cnblogs.com/joeliu/archive/2008/04/17/1158592.html)
-   [IIS 6 Architecture and Request Processing (Illustration)](https://web.archive.org/web/20131111082311/http://www.directionsonmicrosoft.com:80/sample/DOMIS/update/2002/07jul/0702riawns_illo1.htm)
-   [IIS 6.0 Request Processing](https://learn.microsoft.com/en-us/previous-versions/iis/6.0-sdk/ms524901\(v=vs.90\))
-   [Request Processing in IIS 5.0 Isolation Mode (IIS 6.0)](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2003/cc783130\(v=ws.10\))
-   [HOWTO: IIS 6 Request Processing Basics, Part 1](http://blogs.msdn.com/david.wang/archive/2005/10/14/HOWTO_IIS_6_Request_Processing_Basics_Part_1.aspx)
-   [HOWTO: IIS 6 Request Processing Basics, Part 2 - Web Site, Virtual Directory, and Web Application](http://blogs.msdn.com/david.wang/archive/2008/12/07/howto-iis-6-request-processing-basics-part-2-web-site-virtual-directory-and-web-application.aspx)
-   [IIS 7.0 HTTP Request Processing](https://blogs.iis.net/tomwoolums/iis-7-0-http-request-processing/)
-   [Introduction to IIS 7.0 Architecture](https://learn.microsoft.com/en-us/iis/get-started/introduction-to-iis/introduction-to-iis-architecture)
