網站和 Web 應用程式相依於 Internet Information Services (IIS) 應用程式集區的可用性。IIS 應用程式集區則繼而相依於 Windows 處理序啟用服務 (WAS)。如果 WAS 不在執行中,或在應用程式集區啟動或關閉期間發生錯誤,則網站和 Web 應用程式可能會無法使用。
若要解決此問題,您必須修正 ApplicationHost.Config 檔案中的 [globalModules] 區段中的問題。
設定 ApplicationHost.config 中的 [globalModules] 區段:
開啟提高權限的 [命令提示字元] 視窗。按一下 [開始],指向 [所有程式],按一下 [附屬應用程式],以滑鼠右鍵按一下 [命令提示字元],然後按一下 [以系統管理員身分執行]。
輸入 cd %Windir%\system32\inetsrv\。
輸入 appcmd add backup backupName 來備份 ApplicationHost.config 檔案。系統將在 %Windir%\system32\inetsrv\backup 目錄底下使用您指定的備份名稱建立一個目錄。如果您不指定名稱,appcmd 會自動使用目前的日期和時間來產生目錄名稱。
輸入 cd %Windir%\system32\inetsrv\config
輸入 notepad ApplicationHost.config
在記事本中,在 [system.webServer] 區段底下搜尋 [globalModules] 區段。
利用文章「 IIS 10:globalModules Element (IIS 設定結構)」作為指引來協助您修正 ApplicationHost.config 檔案中的 [globalModules] 區段設定錯誤。
儲存並關閉 ApplicationHost.config 檔案。
Target | Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool |
Category | Alert |
Enabled | True |
Alert Generate | False |
Remotable | True |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.Server.IIS.10.0.WarningAndErrorEventProvider | Default |
Filter | ConditionDetection | Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool.EventFilter | Default |
WA | WriteAction | Microsoft.Windows.Server.IIS.10.0.GenerateAlertAction.SuppressedByDescription | Default |
<Rule ID="Microsoft.Windows.InternetInformationServices.10.0.Worker.process.for.application.pool.encountered.an.error.while.trying.to.read.global.module.configuration" Enabled="true" Target="Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.Windows.Server.IIS.10.0.WarningAndErrorEventProvider">
<LogName>Application</LogName>
</DataSource>
</DataSources>
<ConditionDetection ID="Filter" TypeID="Microsoft.Windows.InternetInformationServices.10.0.ApplicationPool.EventFilter">
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>2297</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-IIS-W3SVC-WP</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WA" TypeID="Microsoft.Windows.Server.IIS.10.0.GenerateAlertAction.SuppressedByDescription">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.InternetInformationServices.10.0.Worker.process.for.application.pool.encountered.an.error.while.trying.to.read.global.module.configuration.AlertMessage"]$</AlertMessageId>
</WriteAction>
</WriteActions>
</Rule>