Freigeben über


Hinzufügen globaler Module <add>

Übersicht

Das <add>-Element der <globalModules>-Sammlung gibt ein einzelnes globales Modul an, das dem Webserver hinzugefügt werden soll.

Kompatibilität

Version Hinweise
IIS 10.0 Das <add>-Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <add>-Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <add>-Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <add>-Element wurde in IIS 7.5 nicht geändert.
IIS 7.0 Das <add>-Element der <globalModules>-Sammlung wurde in IIS 7.0 eingeführt.
IIS 6.0 N/V

Setup

Das <globalModules>-Element ist in der Standardinstallation von IIS 7 enthalten.

Gewusst wie

Installieren eines nativen Moduls

  1. Öffnen Sie Internetinformationsdienste-Manager (IIS-Manager):

    • Vorgehensweise unter Windows Server 2012 oder Windows Server 2012 R2:

      • Klicken Sie auf der Taskleiste auf Server-Manager > Tools > Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows 8 oder Windows 8.1:

      • Halten Sie die WINDOWS-TASTE gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf Systemsteuerung.
      • Klicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows Server 2008 oder Windows Server 2008 R2:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung, und klicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows Vista oder Windows 7:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
  2. Klicken Sie im Bereich Verbindungen auf die Serververbindung, der Sie das native Modul hinzufügen möchten.

  3. Doppelklicken Sie auf der Startseite des Servers auf Module.
    Screenshot that shows the Modules is highlighted.

  4. Klicken Sie im Bereich Aktionen auf Native Module konfigurieren....

  5. Klicken Sie im Dialogfeld Native Module konfigurieren auf Registrieren....
    Screenshot that shows the Configure Native Modules dialog box.

  6. Geben Sie im Dialogfeld Natives Modul registrieren im Feld Name einen Namen für das native Modul ein.

  7. Geben Sie im Feld Pfad den Dateisystempfad des Speicherorts der DLL-Datei ein, oder klicken Sie auf die Schaltfläche Durchsuchen.
    Screenshot that shows the Register Native Module dialog box.

  8. Wählen Sie im Dialogfeld Native Module konfigurieren die Option für das native Modul aus, das Sie soeben registriert haben, klicken Sie auf OK, und klicken Sie dann erneut auf OK. Dadurch kann das systemeigene Modul ausgeführt werden und steht für Sites und Anwendungen auf Ihrem Webserver zur Verfügung.

    Hinweis

    Wenn Sie die Ausführung des nativen Moduls nicht aktivieren möchten, deaktivieren Sie die Option für das native Modul, und klicken Sie anschließend auf OK.

  9. Optional können Sie das native Modul sperren, wenn Sie verhindern möchten, dass es auf niedrigeren Ebenen im Konfigurationssystem außer Kraft gesetzt wird. Wählen Sie auf der Seite Module das Modul aus, und klicken Sie anschließend im Bereich Aktionen auf Sperren.

Aktivieren eines nativen Moduls

  1. Öffnen Sie Internetinformationsdienste-Manager (IIS-Manager):

    • Vorgehensweise unter Windows Server 2012 oder Windows Server 2012 R2:

      • Klicken Sie auf der Taskleiste auf Server-Manager > Tools > Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows 8 oder Windows 8.1:

      • Halten Sie die WINDOWS-TASTE gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf Systemsteuerung.
      • Klicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows Server 2008 oder Windows Server 2008 R2:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltung, und klicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
    • Vorgehensweise unter Windows Vista oder Windows 7:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltung, und doppelklicken Sie dann auf Internetinformationsdienste-Manager (IIS-Manager).
  2. Navigieren Sie zu der Server-, Site- oder Anwendungsebene, die Sie verwalten möchten.

  3. Doppelklicken Sie auf der Startseite des Servers, der Site oder der Anwendung auf Module.

  4. Klicken Sie im Bereich Aktionen auf Native Module konfigurieren....

  5. Wählen Sie im Dialogfeld Native Module konfigurieren die Option für das native Modul aus, das Sie aktivieren möchten, und klicken Sie anschließend auf OK.
    Screenshot that shows the Configure Native Modules dialog box. UriCacheModule is selected.

Konfiguration

Jedes <add>-Element in der <globalModules>-Sammlung muss ein name-Attribut enthalten, das das Modul identifiziert, und ein image-Attribut, das auf die DLL verweist, die das Modul implementiert.

Attribute

Attribut Beschreibung
image Erforderliches Zeichenfolgenattribut.

Gibt den physischen Pfad der DLL-Datei für das globale Modul an. Der Attributwert wird erweitert, wenn Umgebungsvariablen wie „%windir%“ verwendet werden.
name Erforderliches Zeichenfolgenattribut.

Gibt den Namen des globalen Moduls an.
preCondition Optionales Zeichenfolgeattribut.

Gibt Bedingungen an, unter denen das globale Modul ausgeführt wird.

Das preCondition-Attribut kann einen oder mehrere der folgenden Werte haben. Wenn Sie mehrere Werte angeben möchten, trennen Sie die einzelnen Werte jeweils durch ein Komma (,).
Wert Beschreibung
bitness32 Geben Sie den Wert bitness32 an, wenn es sich bei dem globalen Modul um eine 32-Bit-DLL-Datei handelt und IIS das globale Modul nur für Arbeitsprozesse laden soll, die im WOW64-Modus (32-Bit-Simulation) auf einem 64-Bit-Betriebssystem ausgeführt werden.
bitness64 Geben Sie den Wert bitness64 an, wenn es sich bei dem globalen Modul um eine 64-Bit-DLL-Datei handelt und IIS das globale Modul nur für Arbeitsprozesse laden soll, die im 64-Bit-Modus ausgeführt werden.
integratedMode Geben Sie den Wert integratedMode an, wenn das globale Modul die integrierte Anforderungsverarbeitungspipeline verwenden soll, um Anforderungen für verwaltete Inhalte zu verarbeiten.
ISAPIMode Geben Sie den Wert ISAPIMode an, wenn das globale Modul die ASP.NET-ISAPI-Erweiterung „Aspnet_isapi.dll“ verwenden soll, um Anforderungen für verwaltete Inhalte zu verarbeiten.
runtimeVersionv1.1 Geben Sie den Wert runtimeVersionv1.1 an, wenn das globale Modul nur für Anwendungspools geladen werden soll, die für die Verwendung der .NET Framework-Version 1.1 konfiguriert sind.
runtimeVersionv2.0 Geben Sie den Wert runtimeVersionv2.0 an, wenn das globale Modul nur für Anwendungspools geladen werden soll, die für die Verwendung der .NET Framework-Version 2.0 konfiguriert sind.

Untergeordnete Elemente

Keine.

Konfigurationsbeispiel

Das folgende Beispiel zeigt einen <globalModules>-Abschnitt von IIS 7, der Einträge für alle Module enthält, die in der minimalen Installation des Webservers enthalten sind. Darüber hinaus enthält er einen Eintrag für das Modul BasicAuthenticationModule sowie einen weiteren Eintrag für das Drittanbietermodul ImageCopyrightModule.

<globalModules>
   <add name="UriCacheModule"
      image="%windir%\System32\inetsrv\cachuri.dll" />
   <add name="FileCacheModule"
      image="%windir%\System32\inetsrv\cachfile.dll" />
   <add name="TokenCacheModule"
      image="%windir%\System32\inetsrv\cachtokn.dll" />
   <add name="HttpCacheModule"
      image="%windir%\System32\inetsrv\cachhttp.dll" />
   <add name="StaticCompressionModule"
      image="%windir%\System32\inetsrv\compstat.dll" />
   <add name="DefaultDocumentModule"
      image="%windir%\System32\inetsrv\defdoc.dll" />
   <add name="DirectoryListingModule"
      image="%windir%\System32\inetsrv\dirlist.dll" />
   <add name="ProtocolSupportModule"
      image="%windir%\System32\inetsrv\protsup.dll" />
   <add name="StaticFileModule"
      image="%windir%\System32\inetsrv\static.dll" />
   <add name="AnonymousAuthenticationModule"
      image="%windir%\System32\inetsrv\authanon.dll" />
   <add name="RequestFilteringModule"
      image="%windir%\System32\inetsrv\modrqflt.dll" />
   <add name="CustomErrorModule"
      image="%windir%\System32\inetsrv\custerr.dll" />
   <add name="HttpLoggingModule"
      image="%windir%\System32\inetsrv\loghttp.dll" />
   <add name="RequestMonitorModule"
      image="%windir%\System32\inetsrv\iisreqs.dll" />
   <add name="BasicAuthenticationModule"
      image="%windir%\System32\inetsrv\authbas.dll" />
   <add name="ImageCopyrightModule"
      image="%windir%\System32\inetsrv\ImageCopyrightModule.dll" />
</globalModules>

Beispielcode

In den folgenden Beispielen wird ein natives Modul namens „ImageCopyrightModule“ in IIS 7 installiert und automatisch auf dem gesamten Server aktiviert.

AppCmd.exe

appcmd.exe install module /name:ImageCopyrightModule /image:%windir%\system32\inetsrv\imageCopyrightModule.dll

Sie können auch die folgende Syntax verwenden:

appcmd.exe set config -section:system.webServer/globalModules /+"[name='ImageCopyrightModule',image='%windir%\system32\inetsrv\imageCopyrightModule.dll']" /commit:apphost

Hinweis

Legen Sie den commit-Parameter auf apphost fest, wenn Sie „AppCmd.exe“ verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei „ApplicationHost.config“ festgelegt.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection globalModulesSection = config.GetSection("system.webServer/globalModules");
         ConfigurationElementCollection globalModulesCollection = globalModulesSection.GetCollection();
         ConfigurationElement addElement = globalModulesCollection.CreateElement("add");
         addElement["name"] = @"ImageCopyrightModule";
         addElement["image"] = @"%windir%\system32\inetsrv\imageCopyrightModule.dll";
         globalModulesCollection.Add(addElement);
         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim globalModulesSection As ConfigurationSection = config.GetSection("system.webServer/globalModules")
      Dim globalModulesCollection As ConfigurationElementCollection = globalModulesSection.GetCollection
      Dim addElement As ConfigurationElement = globalModulesCollection.CreateElement("add")
      addElement("name") = "ImageCopyrightModule"
      addElement("image") = "%windir%\system32\inetsrv\imageCopyrightModule.dll"
      globalModulesCollection.Add(addElement)
      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var globalModulesSection = adminManager.GetAdminSection("system.webServer/globalModules", "MACHINE/WEBROOT/APPHOST");
var globalModulesCollection = globalModulesSection.Collection;

var addElement = globalModulesCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "ImageCopyrightModule";
addElement.Properties.Item("image").Value = "%windir%\\system32\\inetsrv\\imageCopyrightModule.dll";
globalModulesCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set globalModulesSection = adminManager.GetAdminSection("system.webServer/globalModules", "MACHINE/WEBROOT/APPHOST")
Set globalModulesCollection = globalModulesSection.Collection

Set addElement = globalModulesCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "ImageCopyrightModule"
addElement.Properties.Item("image").Value = "%windir%\system32\inetsrv\imageCopyrightModule.dll"
globalModulesCollection.AddElement addElement

adminManager.CommitChanges()