新聞中心
IIS 7 的 ASP.net 請求處理過程

公司主營業(yè)務:網(wǎng)站設計、網(wǎng)站建設、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)建站是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)建站推出洛江免費做網(wǎng)站回饋大家。
IIS7 站點啟動并處理請求的步驟如下圖:
步驟 1 到 6 ,是處理應用啟動,啟動好后,以后就不需要再走這個步驟了。
上圖的8個步驟分別如下:
1、當客戶端瀏覽器開始HTTP 請求一個WEB 服務器的資源時,HTTP.sys 攔截到這個請求。
2、HTTP.sys contacts WAS to obtain information from the configuration store.
3、WAS 向配置存儲中心請求配置信息。applicationHost.config。
4、WWW 服務接受到配置信息,配置信息指類似應用程序池配置信息,站點配置信息等等。
5、WWW 服務使用配置信息去配置 HTTP.sys 處理策略。
6、WAS starts a worker process for the application pool to which the request was made.
7、The worker process processes the request and returns a response to HTTP.sys.
8、客戶端接受到處理結果信息。
W3WP.exe 進程中又是如果處理得呢?? IIS 7 的應用程序池的托管管道模式分兩種: 經(jīng)典和集成。 這兩種模式下處理策略各不相通。
IIS 6 以及 IIS7 經(jīng)典模式的托管管道的架構
在IIS7之前,ASP.NET 是以 IIS ISAPI extension 的方式外加到 IIS,其實包括 ASP 以及 PHP,也都以相同的方式配置(PHP 在 IIS 采用了兩種配置方式,除了 IIS ISAPI extension 的方式,也包括了 CGI 的方式,系統(tǒng)管理者能選擇 PHP 程序的執(zhí)行方式),因此客戶端對 IIS 的 HTTP 請求會先經(jīng)由 IIS 處理,然后 IIS 根據(jù)要求的內(nèi)容類型,如果是 HTML 靜態(tài)網(wǎng)頁就由 IIS 自行處理,如果不是,就根據(jù)要求的內(nèi)容類型,分派給各自的 IIS ISAPI extension;如果要求的內(nèi)容類型是 ASP.NET,就分派給負責處理 ASP.NET 的 IIS ISAPI extension,也就是 aspnet_isapi.dll。下圖是這個架構的示意圖。
IIS 7 應用程序池的 托管管道模式 經(jīng)典 模式也是這樣的工作原理。 這種模式是兼容IIS 6 的方式, 以減少升級的成本。
IIS 7 應用程序池的 托管管道模式 集成模式
而 IIS 7 完全整合 .NET 之后,架構的處理順序有了很大的不同(如下圖),最主要的原因就是 ASP.NET 從 IIS 插件(ISAPI extension)的角色,進入了 IIS 核心,而且也能以 ASP.NET 模塊負責處理 IIS 7 的諸多類型要求。這些 ASP.NET 模塊不只能處理 ASP.NET 網(wǎng)頁程序,也能處理其他如 ASP 程序、PHP 程序或靜態(tài) HTML 網(wǎng)頁,也因為 ASP.NET 的諸多功能已經(jīng)成為 IIS 7 的一部份,因此 ASP 程序、PHP 程序或靜態(tài) HTML 網(wǎng)頁等類型的要求,也能使用像是Forms認證(Forms Authentication)或輸出緩存(Output Cache)等 ASP.NET 2.0 的功能(但須修改 IIS 7 的設定值)。也因為 IIS 7 允許自行以 ASP.NET API 開發(fā)并加入模塊,因此 ASP.NET 網(wǎng)頁開發(fā)人員將更容易擴充 IIS 7 和網(wǎng)站應用程序的功能,甚至能自行以 .NET 編寫管理 IIS 7 的程序(例如以程控 IIS 7 以建置網(wǎng)站或虛擬目錄)。
以上介紹ASP.NET的IIS ISAPI extension。
當前文章:ASP.NET的IISISAPIextension
瀏覽地址:http://www.dlmjj.cn/article/djpisdd.html


咨詢
建站咨詢
