IIS7中ASP.net 請(qǐng)求處理過(guò)程說(shuō)明
步驟 1 到 6 ,是處理應(yīng)用啟動(dòng),啟動(dòng)好后,以后就不需要再走這個(gè)步驟了。

上圖的8個(gè)步驟分別如下:
- 當(dāng)客戶(hù)端瀏覽器開(kāi)始HTTP 請(qǐng)求一個(gè)WEB 服務(wù)器的資源時(shí),HTTP.sys 攔截到這個(gè)請(qǐng)求。
- HTTP.sys contacts WAS to obtain information from the configuration store.
- WAS 向配置存儲(chǔ)中心請(qǐng)求配置信息。applicationHost.config。
- WWW 服務(wù)接受到配置信息,配置信息指類(lèi)似應(yīng)用程序池配置信息,站點(diǎn)配置信息等等。
- WWW 服務(wù)使用配置信息去配置 HTTP.sys 處理策略。
- WAS starts a worker process for the application pool to which the request was made.
- The worker process processes the request and returns a response to HTTP.sys.
- 客戶(hù)端接受到處理結(jié)果信息。
W3WP.exe 進(jìn)程中又是如果處理得呢?? IIS 7 的應(yīng)用程序池的托管管道模式分兩種: 經(jīng)典和集成。 這兩種模式下處理策略各不相通。
本文作者:郭紅俊 http://blog.joycode.com/ghj
IIS 6 以及 IIS7 經(jīng)典模式的托管管道的架構(gòu)
在IIS7之前,ASP.NET 是以 IIS ISAPI extension 的方式外加到 IIS,其實(shí)包括 ASP 以及 PHP,也都以相同的方式配置(PHP 在 IIS 采用了兩種配置方式,除了 IIS ISAPI extension 的方式,也包括了 CGI 的方式,系統(tǒng)管理者能選擇 PHP 程序的執(zhí)行方式),因此客戶(hù)端對(duì) IIS 的 HTTP 請(qǐng)求會(huì)先經(jīng)由 IIS 處理,然后 IIS 根據(jù)要求的內(nèi)容類(lèi)型,如果是 HTML 靜態(tài)網(wǎng)頁(yè)就由 IIS 自行處理,如果不是,就根據(jù)要求的內(nèi)容類(lèi)型,分派給各自的 IIS ISAPI extension;如果要求的內(nèi)容類(lèi)型是 ASP.NET,就分派給負(fù)責(zé)處理 ASP.NET 的 IIS ISAPI extension,也就是 aspnet_isapi.dll。下圖是這個(gè)架構(gòu)的示意圖。
IIS 7 應(yīng)用程序池的 托管管道模式 經(jīng)典 模式也是這樣的工作原理。 這種模式是兼容IIS 6 的方式, 以減少升級(jí)的成本。

IIS6 的執(zhí)行架構(gòu)圖,以及 IIS7 應(yīng)用程序池配置成經(jīng)典模式的執(zhí)行架構(gòu)圖
- ASP.NET在IIS7中上下文中不可用的解決方法
- Win2008 server + IIS7 設(shè)置身份模擬(ASP.NET impersonation)
- IIS7 配置大全(ASP.NET 2.0, WCF, ASP.NET MVC,php)
- 讓W(xué)in2008+IIS7+ASP.NET支持10萬(wàn)并發(fā)請(qǐng)求
- asp.net iis7默認(rèn)文檔錯(cuò)誤異常的解決方法
- win7和win2008 r2下配置IIS7(ASP.net運(yùn)行環(huán)境)
- Win7旗艦版中的IIS7配置asp.net的運(yùn)行環(huán)境
- IIS7.5 檢測(cè)到在集成的托管管道模式下不適用的 ASP.NET設(shè)置
- 使用ASP.NET操作IIS7中應(yīng)用程序
相關(guān)文章
asp.net使用DataSet的ReadXml讀取XML文件及Stream流的方法
這篇文章主要介紹了asp.net使用DataSet的ReadXml讀取XML文件及Stream流的方法,實(shí)例分析了asp.net以字符流的形式讀取與寫(xiě)入xml文件的相關(guān)技巧,需要的朋友可以參考下2016-06-06
.Net Compact Framework開(kāi)發(fā)小技巧 推薦
這篇文章對(duì)于.Net Compact Framework開(kāi)發(fā)的朋友有一定的幫助,內(nèi)容比較實(shí)用。2009-02-02
asp.net+sqlserver實(shí)現(xiàn)的簡(jiǎn)單高效的權(quán)限設(shè)計(jì)示例
大部分系統(tǒng)都有權(quán)限系統(tǒng)。一般來(lái)說(shuō),它能管控人員對(duì)某個(gè)否頁(yè)面的訪問(wèn);對(duì)某些字段、控件可見(jiàn)或者不可見(jiàn)。對(duì)gridview中的數(shù)據(jù)是否可刪除、可添加、可新增等等。2010-04-04
Entity Framework Core延遲加載(懶加載)用法
這篇文章介紹了Entity Framework Core延遲加載(懶加載)的使用方式,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02
asp.net類(lèi)庫(kù)中添加WebService引用出現(xiàn)問(wèn)題解決方法
在Web項(xiàng)目?jī)?nèi)添加WebService的引用是件很簡(jiǎn)單的事情,不過(guò)對(duì)于一些新手朋友來(lái)說(shuō),就沒(méi)有那么簡(jiǎn)單了,因?yàn)樵谔砑拥倪^(guò)程中總會(huì)遇到一些困難,接下來(lái)詳細(xì)介紹如何解決,感興趣的你可不要錯(cuò)過(guò)了啊2013-02-02
ASP.NET GridView的Bootstrap分頁(yè)樣式
這篇文章主要為大家詳細(xì)介紹了ASP.NET GridView的Bootstrap分頁(yè)樣式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11
ASP.NET URL偽靜態(tài)重寫(xiě)實(shí)現(xiàn)方法
ASP.NET下為靜態(tài)的實(shí)現(xiàn)方法。2009-12-12
ASP.NET中為T(mén)extBox中添加calendar.js示例代碼
為T(mén)extBox中添加calendar.js對(duì)于一些新手朋友確實(shí)有點(diǎn)難度,下面為大家介紹下ASP.NET中具體的實(shí)現(xiàn)方法2013-11-11
ASP.NET Core依賴(lài)注入系列教程之控制反轉(zhuǎn)(IoC)
這篇文章主要給大家介紹了關(guān)于ASP.NET Core依賴(lài)注入系列教程之控制反轉(zhuǎn)(IoC)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-11-11

