IIS 7.0: 構建具有端到端可擴充性的Web伺服器解決方案

來源:互聯網
上載者:User

本文討論:

IIS 擴充點

構建響應修改模組

添加 IIS 管理器配置

部署模組

本文使用了以下技術:

IIS 7.0, .NET Framework

IIS 7.0 Web 平台與以往任何版本的 IIS 相比,可支援更多的應用程式架構技術來託管豐富的應用程式,它具有完備的功能,可以直接對這些應用程式進行部署。但是同時要注意,您所看到的(在 Windows® 安裝中)不一定是您最終得到的。

IIS 7.0 體繫結構被設計為可以從上到下進行擴充,允許您將內建功能集的任何一部分替換為適合您需求的自訂實現。因此說 IIS 7.0 不是提供一些東拼西湊的外掛程式點,而是通過在公用可擴充模型上層實現其自身的所有功能實現了最終的可擴充性承諾。這種設計在整個平台中隨處可見,從模組 Web 服務器引擎自身到配置系統,再到 IIS 管理器控制台。

本文將對 IIS 7.0 可擴充模型進行研究,我們會對共用的源“響應修改”項目做一簡要介紹,它可以使用可配置的響應修改規則對來自 IIS 應用程式的響應進行動態修改。首先我們將利用伺服器的整合 ASP.NET 可擴充性來構建 Web 服務器模組。然後,我們將開發自訂的配置段並為 IIS 管理器建立自訂的管理頁,以調整模組的部署和管理功能。

擴充 Web 服務器

IIS 7.0 模組體繫結構具有全面自訂所需工作負載的 Web 服務器的功能。這通常只需通過僅安裝應用程式所需功能並建立精簡 Web 服務器(除指定工作外不執行任何其他任務)即可完成。

但是,這僅僅是個開頭。通常,所需的 Web 工作負載需要使用附加的功能,而這些附加功能可能不是內建的 IIS 功能集的一部分。或者在某些情況下,應用程式可能因內建功能不夠靈活而需要自訂的功能集。由於 IIS 7.0 的所有功能都是基於公用可擴充 API 構建的,因此您可以將其中的任何部分替換為最適合您需求的自訂實現。

IIS 7.0 為開發 Web 服務器模組提供了兩個選項。首先,可以使用新的 C++ 模組 API,大部分內建功能都以此為基礎。模組 API 將替換 ISAPI 擴充並篩選出在先前版本的 IIS 中提供的 API。此 API 與 ISAPI 相比有了重大的改進,因為它內容非常豐富,可支援所有 IIS 7.0 功能並且非常易於編程。您可以通過以下網址瞭解有關此 API 改進的詳細資料:mvolo.com/blogs/serverside/archive/2006/10/07/10-reasons-why-server-development-is-better-with-IIS7.aspx。

其次,IIS 7.0 中整合了 ASP.NET,使用者可以使用他們所熟悉的 ASP.NET 模組 API 來開發 IIS 7.0 模組。在 ASP.NET 整合模式下,這些模組在 IIS 請求處理管道中被視為一類成員,如圖 1 所示。這將允許 ASP.NET 模組在處理請求的所有階段訪問 IIS 固有對象(如請求和響應),還允許它處理所有資源類型的請求 — 而不僅僅是由 ASP.NET 架構處理的類型。

圖 1 位於 IIS 7.0 請求處理中的 ASP.NET 模組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.