Internetowe usługi informacyjne (IIS) 9 umożliwiają deweloperom proste konfigurowanie macierzystych i zarządzanych modułów kodu, które mogą przetwarzać żądania wysyłane do serwera sieci Web. Aby procesy robocze mogły załadować moduły, muszą one być prawidłowo skonfigurowane. Prawidłowa konfiguracja modułu wymaga podania unikatowej nazwy oraz prawidłowego typu lub ścieżki. Dla modułów zarządzanych można określić, czy powinny być wywoływane tylko w przypadku żądań do aplikacji ASP.NET lub zarządzanych programów obsługi. Określenie tego ustawienia może zoptymalizować wydajność.
Zdefiniuj moduł globalny
Aby zapewnić prawidłową obsługę żądań przez usługi IIS, w pliku ApplicationHost.config w sekcji globalModules musi być zdefiniowany co najmniej jeden moduł globalny. Definicja modułu musi zawierać unikatowy atrybut nazwy modułu oraz atrybut obrazu określający ścieżkę w systemie plików do pliku DLL, który zawiera moduł globalny.
Dodaj definicję modułu globalnego do pliku ApplicationHost.config
Aby dodać definicję modułu globalnego do pliku ApplicationHost.config za pomocą programu Notatnik:
Otwórz wiersz polecenia z podwyższonym poziomem uprawnień. Kliknij przycisk Start, wskaż polecenie Wszystkie programy, kliknij opcję Akcesoria, prawym przyciskiem myszy kliknij opcję Wiersz polecenia, a następnie kliknij polecenie Uruchom jako administrator.
Wpisz cd %Windir%\system32\inetsrv\config
Wpisz notepad applicationHost.config
W Notatniku znajdź sekcję globalModules w ramach sekcji system.webServer.
Dodaj wpis modułu zawierający atrybuty nazwy i obrazu. Przykład przedstawiono w sekcji poniżej.
Zapisz plik ApplicationHost.config i wyjdź z Notatnika.
Przykładowa definicja modułu globalnego
<globalModules>
<add name="AccessCheckModule"
image="D:\Windows\system32\inetsrv\checkacc.dll"
preCondition=""
/>
</globalModules>
Aby uzyskać więcej informacji na temat sekcji globalModules, zobacz IIS 10: add Element for globalModules (IIS Settings Schema) (IIS 10: element add dla elementu globalModules — schemat ustawień usług IIS).
Target | Microsoft.Windows.InternetInformationServices.10.0.WebServer |
Category | Alert |
Enabled | True |
Event_ID | 2298 |
Event Source | Microsoft-Windows-IIS-W3SVC-WP |
Alert Generate | False |
Remotable | True |
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
WA | WriteAction | Microsoft.Windows.Server.IIS.10.0.GenerateAlertAction.SuppressedByDescription | Default |
<Rule ID="Microsoft.Windows.InternetInformationServices.10.0.The.Global.Modules.list.is.empty" Enabled="true" Target="Microsoft.Windows.InternetInformationServices.10.0.WebServer" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<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>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>2298</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<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.The.Global.Modules.list.is.empty.AlertMessage"]$</AlertMessageId>
</WriteAction>
</WriteActions>
</Rule>