Windows-Server-2008-R2

IIS 7.x 中本機模組的文件

  • September 4, 2013

我一直在為靜態文件服務目的網站使用超級精簡的 IIS 7.5 配置工作了一段時間。為了實現這一點,我簡單地剝離了所有動態模組的指定網站,並且只指定了本地模組,例如StaticFileModuleAnonymousAuthenticationModuleHttpCompressionModule

事實證明,這會導致工作程序的記憶體佔用和處理成本顯著下降,並且整體性能比預設網站要好得多。

現在,作為下一步,我想看看是否可以進一步減少載入到記憶體中的模組數量。

我可以一個一個地刪除模組並嘗試查看它如何影響性能和功能,但我更願意研究各個模組實際具有/管理的功能。

一些模組是不言自明的(即DefaultDocumentModule,,DirectoryListingModule),但有些不是。

有沒有什麼地方可以找到內置本機模組的文件?

馬蒂亞斯,

您可以在此處找到 IIS 中內置的本機和託管模組的列表(模組參考部分)。本文件只會為您提供本機或實用程序模組的描述。

由於這是 IIS 的最小安裝,我假設您沒有安裝 .NET 集成。如果這個假設是正確的,那麼上面的連結應該是你所需要的,因為沒有託管模組需要擔心。

使用 GUI 安裝 IIS 時,只需選擇“靜態內容”模組,您將獲得以下模組:

<globalModules>
   <add name="UriCacheModule" ... />
   <add name="FileCacheModule" .../>
   <add name="TokenCacheModule" ... />
   <add name="HttpCacheModule" ... />
   <add name="ProtocolSupportModule" ... />
   <add name="StaticFileModule" ... />
   <add name="AnonymousAuthenticationModule" ... />
</globalModules>

您可以將它們減少到兩個:

<globalModules>
   <add name="AnonymousAuthenticationModule" ... />
   <add name="StaticFileModule" ... />
</globalModules>

但我認為記憶體模組是有道理的。然後,如果您錯過任何功能,您可以稍後添加它們。

DefaultAppPool 設置為使用 .NET Framework 'v2.0',即使不支持此功能。將其更改為'No Managed Code'.

如果您只提供 GIF,PNG 和 JPG 也會刪除所有其他 MIME 類型。

引用自:https://serverfault.com/questions/533761