IIS 8.0 ASP.NET 組態管理
作者:Won Yoo
相容性
版本 | 備註 |
---|---|
IIS 8.0 | IIS 管理工具已針對 IIS 8.0 中的 ASP.net 4.5 進行更新。 |
IIS 7.5 | IIS 管理工具尚未針對 IIS 7.5 中的 ASP.net 4.5 進行更新。 |
IIS 7.0 | IIS 管理工具尚未針對 IIS 7.0 中的 ASP.net 4.0 進行更新 |
問題
Windows Server 2012 預設包含 .NET Framework 4.5,以及 .NET 3.5 Framework 的選擇性安裝。 開發人員和系統管理員經常需要同時執行 ASP.net 3.5 和 ASP.net 4.5 Web 應用程式,因此他們也需要適當地管理它們的能力。
解決方法
IIS 8.0 支援使用圖形化 IIS 管理員工具和 IIS 的命令列管理工具來管理 ASP.NET 3.5 和 ASP.NET 4.5 應用程式。
在讀取或寫入 ASP.NET 應用程式的組態資訊時,圖形化和命令列 IIS 管理工具都會以版本特定的方式運作。 例如,在 IIS 伺服器管理員中執行的 ASP.NET 管理模組會顯示適用于應用程式所使用特定 ASP.NET 版本的組態選項。
逐步指示
先決條件:
本逐步解說中示範的概念需要已安裝下列所有專案的 Windows Server 2012 電腦:IIS 8.0、ASP.NET 3.5 和 ASP.NET 4.5。
在本逐步解說之前,讀者應該已完成隨附逐步解說: 在 IIS 8.0 上使用 ASP.NET 3.5 和 ASP.NET 4.5。 該檔會引導讀者安裝這三個功能,以及這兩個版本的範例應用程式 ASP.NET。
已知 Bug 的因應措施:
這項功能目前沒有已知的 Bug。
顯示 ASP.NET 管理模組
啟動 IIS 管理員 UI,並展開視窗左側的樹狀檢視,讓 「預設網站」及其子系同時顯示:
IIS 管理員 UI 的右側部分會顯示可用於管理樹狀檢視中醒目提示之 ASP.NET 應用程式的系統管理模組。 在此情況下,由於已選取 [預設網站 ],因此根據預設,此網站支援 ASP.NET 4.5,IIS 管理員會顯示 15 個不同的 ASP.NET 特定系統管理模組。 上方以紅色大綱顯示的圖示是三個系統管理模組,這些模組僅適用于 ASP.NET 4.5 應用程式。
您可以在下列 IIS 管理員中看到管理 ASP.NET 3.5 和 ASP.NET 4.5 應用程式之間的高階差異。 由於 「example35」 應用程式已針對 ASP.NET 3.5 設定,因此只有 12 個 ASP.NET 特定系統管理模組可供使用:
如上所述,IIS 8.0 中的 IIS 管理員支援管理 ASP.NET 4.5 時的三個額外管理模組:
- 提供者:此管理模組支援 ASP.NET 4.5 成員資格、角色管理員和設定檔功能的插入式持續性提供者集中式管理。
- .NET 使用者:ASP.NET 4.5 應用程式的互動式 UI 型建立、刪除和修改成員資格使用者。
- .NET 角色:以 UI 為基礎的角色建立/刪除,以及與 「.NET Users」 模組整合,以新增和移除角色的使用者。 如同前兩個系統管理模組,「.NET 角色」 模組可用來管理 ASP.NET 4.5 應用程式
管理 ASP.NET 編譯設定
ASP.NET 3.5 和 ASP.NET 4.5 的許多系統管理模組都會公開相同的功能。 不過,隨著某些 ASP.NET 功能隨著時間演進,較新的.NET Framework版本會新增其他組態選項。 IIS 管理員中的 ASP.NET 管理模組會根據受管理的應用程式 ASP.NET 版本,動態變更其顯示的選項,
以下是 ASP.NET 3.5 的 .NET 編譯螢幕擷取畫面:
以下是 ASP.NET 4.5 的對應組態。 您會看到組態選項已展開,以包含新的 ASP.NET 4.5 功能:
ASP.NET 4.5 應用程式中可用的兩個新選項如下:
- 啟用 JIT 分析:根據預設,ASP.NET 4.5 會與 CLR 的 JIT 編譯搭配使用,以使用其他 CPU 核心啟用推測 JIT 執行路徑的背景編譯。
- 啟用預先擷取:只有 Windows Server 2012 上提供 ASP.NET 4.5 功能,可將 ASP.NET 4.5 編譯系統與 Windows Server 8 超級擷取服務整合。 啟用 Superfetch 服務和 ASP.NET 預先擷取選項時,Windows Server 2012 會在啟動 Web 應用程式期間分析 ASP.NET 編譯,以便在載入受控元件時動態優化磁片效能。
管理 ASP.NET 電腦金鑰設定
以下是 ASP.NET 3.5 機器金鑰的螢幕擷取畫面。 [驗證方法] 或 [加密方法] 下拉式清單會顯示 ASP.NET 3.5 中各種安全性功能所使用的支援雜湊和加密演算法: (注意:下拉式清單下方的圖片會水準排列,以便顯示這兩組選項。)
以下是 ASP.NET 4.5 的對應組態。
在 ASP.NET 4.5 中,AES (可以使用一組相同的加密演算法,遠回 .NET 2.0) 。 不過,在 ASP.NET 4.5 中,已擴充雜湊演算法的內建支援,以包含 (HMACSHA256、HMACSHA384 和 HMACSHA512) 的 SHA-2 系列雜湊演算法。
管理頁面和控制項 ASP.NET
以下是 ASP.NET 3.5 頁面和控制項的螢幕擷取畫面。 系統管理模組會顯示 ASP.NET 3.5 應用程式的常用組態選項子集:
以下是 ASP.NET 4.5 的對應組態。 [行為] 部分可用的選項已展開,以包含 ASP.NET 4.5 的新設定:
隨著 ASP.NET 在不同版本進行時,會持續修改各種功能和控制項所發出的 HTML、JAVAscript 和 CSS。 不過,現有的應用程式可能會預期轉譯輸出的特定格式。 ASP.NET 4.5 可以設定為使用 「頁面和控制項」系統管理模組中公開的新設定來支援較舊的轉譯格式:
- ClientID 模式:預設為 「Predictable」 的新設定,這會導致在轉譯的 HTML 元素上發出 「id」 屬性的穩定識別碼。 此設定可以變更為 「AutoID」,以模擬舊版 ASP.NET 中使用的識別碼產生行為。
- 控制項轉譯相容性版本:如此設定的名稱所建議,此控制項會使用各種 ASP.NET 控制項所使用的轉譯 HTML/JAVAscript/CSS 輸出版本。 此屬性可以設定為 「3.5」,在此情況下,ASP.NET 4.5 會發出符合 ASP.NET 3.5 所建立格式的輸出。
總結
IIS 8.0 支援在相同電腦上執行 ASP.NET 3.5 和 ASP.NET 4.5 應用程式,並使用不同的應用程式集區來裝載每個.NET Framework版本。 為了支援管理這兩種類型的 ASP.NET 應用程式,IIS 8.0 的管理工具 (UI 和命令列) 也支援管理多個 ASP.NET 版本。 此外,IIS 8.0 伺服器管理員 UI 會根據受 ASP.NET 管理的應用程式版本動態顯示適當的管理選項。