Freigeben über


Anwendungspoolstandards <applicationPoolDefaults>

Übersicht

Die Sammlung <applicationPoolDefaults> der Sammlung <applicationPools> konfiguriert Standardwerte für alle Anwendungspools auf einem Webserver.

Hinweis

Alle Standardwerte, die in der Sammlung <applicationPoolDefaults> nicht explizit definiert sind, erben weiterhin die Standardwerte im IIS 7- und höher-Schema, und einzelne Anwendungspooleinstellungen setzen alle Standardwerte außer Kraft.

Kompatibilität

Version Hinweise
(IIS 10.0 UND HÖHER) Das <applicationInitialization> Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <applicationInitialization> Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Dem Attribut managedRuntimeVersion in IIS 8.0 wurde ein weiterer Wert („v4.0“) hinzugefügt, und der Standardwert wurde anstelle von „v2.0“ in "" geändert.
IIS 7.5 Das <applicationPoolDefaults>-Element wurde in IIS 7.5 nicht geändert.
IIS 7.0 Das <applicationPoolDefaults>-Element wurde in IIS 7.0 eingeführt.
IIS 6.0 Das <applicationPoolDefaults>-Element ersetzt Teile der IIS 6.0 IIsApplicationPools-Metabasiseigenschaft.

Setup

Die Sammlung <applicationPools> ist in der Standardinstallation von IIS 7 und höher enthalten.

Gewusst wie

Einrichten von Standardeinstellungen für Anwendungspools

  1. Öffnen Sie den Internet Information Services (IIS) Manager:

    • Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:

      • Klicken Sie der der Taskleiste auf Server-Managerdann auf Toolsund dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows 8 oder Windows 8.1 verwenden:

      • Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf "Systemsteuerung".
      • Klicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltungund dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Vista oder Windows 7 verwenden:

      • Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
      • Doppelklicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
  2. Erweitern Sie im Bereich Verbindungen den Servernamen, und klicken Sie anschließend auf Anwendungspools.

  3. Klicken Sie im Aktionsbereich auf Standardanwendungspool festlegen.
    Screenshot of the Application Pools screen, showing the Filter field.

  4. Geben Sie im Dialogfeld Anwendungspoolstandards die gewünschten Optionen an.
    Screenshot of the Application Pool Defaults dialog box.

  5. Wenn Sie alle Einstellungen ausgewählt haben, klicken Sie auf OK.

Konfiguration

Attribute

Attribut Beschreibung
autoStart Optionales boolesches Attribut.

Wenn true, dann zeigt das dem World Wide Web Publishing Service (W3SVC), dass der Anwendungspool automatisch gestartet werden soll, wenn er erstellt wird oder wenn IIS gestartet wird.

Der Standardwert ist true.
CLRConfigFile Optionaler Zeichenfolgenwert.

Gibt die .NET-Konfigurationsdatei für den Anwendungspool an.

Hinweis: Dieses Attribut wurde in IIS 7.5 hinzugefügt.

Es ist kein Standardwert vorhanden.
enable32BitAppOnWin64 Optionales boolesches Attribut.

Wenn true, dann kann eine 32-Bit-Anwendung auf einem Computer ausgeführt werden, auf dem eine 64-Bit-Version von Windows ausgeführt wird.

Der Standardwert ist false.
managedPipelineMode Optionales Enumerationsattribut.

Gibt den Anforderungsverarbeitungsmodus an, der zum Verarbeiten von Anforderungen für verwaltete Inhalte verwendet wird.

Das Attribut managedPipelineMode kann einen der folgenden möglichen Werte aufweisen. Der Standardwert ist Integrated.
Wert Beschreibung
Classic Gibt an, dass der Anwendungspool separate IIS- und ASP.NET-Anforderungsverarbeitungspipelins verwendet, die mit ASP.NET 1.1-Anwendungen und ASP.NET 2.0-Anwendungen funktionieren, die nicht im integrierten Modus funktionieren.

Der numerische Wert ist 1.
Integrated Gibt an, dass der Anwendungspool die integrierte IIS- und ASP.NET-Anforderungsverarbeitungspipeline verwendet, die nur mit ASP.NET 2.0- oder höher Anwendungen funktioniert.

Der numerische Wert ist 0.
managedRuntimeLoader Optionales Zeichenfolgeattribut.

Gibt das verwaltete Ladeprogramm an, das zum Vorabladen des Anwendungspools verwendet werden soll.

Hinweis: Dieses Attribut wurde in IIS 7.5 hinzugefügt.

Der Standardwert ist webengine4.dll.
managedRuntimeVersion Optionales Zeichenfolgeattribut.

Gibt die .NET Framework-Version an, die vom Anwendungspool verwendet werden soll.

Das Attribut managedRuntimeVersion kann einer der folgenden möglichen Werte sein. Der Standardwert ist "".
Wert Beschreibung
v1.1 Gibt an, dass der Anwendungspool die .NET Framework-Version 1.1 verwendet.
v2.0 Gibt an, dass der Anwendungspool die .NET Framework-Version 2.0 verwendet.
v4.0 Gibt an, dass der Anwendungspool die .NET Framework-Version 4.0 verwendet.
name Erforderliches Zeichenfolgenattribut.

Gibt einen eindeutigen Namen für einen Anwendungspool auf dem Server an.
queueLength Optionales Uint-Attribut.

Teilt HTTP.sys mit, wie viele Anforderungen für einen Anwendungspool in die Warteschlange gestellt werden, bevor zukünftige Anfragen abgelehnt werden.

Wenn der Wert für diese Eigenschaft überschritten wird, lehnt IIS nachfolgende Anfragen mit dem Fehler 503 ab. Wenn die Einstellung loadBalancerCapabilitiestrue ist, dann wird die Verbindung geschlossen, anstatt Anfragen mit 503 abzulehnen. Weitere Informationen zu loadBalancerCapabilitiesfinden Sie unter Fehlereinstellungen für einen Anwendungspool.

Der Standardwert ist 1000.
startMode Optionaler Enumerationswert.

Gibt den Starttyp für den Anwendungspool an.

Hinweis: Dieses Attribut wurde in IIS 7.5 hinzugefügt.

Das Attribut startMode kann einer der folgenden möglichen Werte sein. Der Standardwert ist OnDemand.
Wert Beschreibung
AlwaysRunning Gibt an, dass der Windows-Prozessaktivierungsdienst (WAS) immer den Anwendungspool startet. Dieses Verhalten ermöglicht es einer Anwendung, die Betriebssystemumgebung vor jeder Bereitstellung von HTTP-Anforderungen zu laden, wodurch der Startprozess für anfängliche HTTP-Anforderungen für die Anwendung reduziert wird.

Der numerische Wert ist 1.
OnDemand Gibt an, dass der Windows-Prozessaktivierungsdienst (WAS) den Anwendungspool startet, wenn eine HTTP-Anforderung für eine Anwendung erfolgt, die im Anwendungspool gehostet wird. Dieses Verhalten ähnelt dem WAS-Verhalten in früheren Versionen von IIS.

Der numerische Wert ist 0.

Untergeordnete Elemente

Element Beschreibung
cpu Konfiguriert CPU-Affinität und CPU-Aktionen.
environmentVariables Konfiguriert eine Sammlung von Umgebungsvariablen, die an Arbeitsprozesse übergeben werden.
failure Konfiguriert Aktionen, die ausgeführt werden sollen, wenn ein Anwendungspool fehlschlägt.
processModel Konfiguriert Prozessverwaltungsattribute für einen Anwendungspool.
recycling Konfiguriert das Recycling des Anwendungspools.

Konfigurationsbeispiel

Das folgende Konfigurationsbeispiel gibt die Standardidentität für alle Anwendungspools als integrierte Anwendungspoolidentität an und gibt 200 als Standardanzahl von Anforderungen an, nach denen Anwendungspools wiederverwendet werden.

<applicationPools>
   <add name="DefaultAppPool" />
   <applicationPoolDefaults>
      <processModel identityType="ApplicationPoolIdentity" />
      <recycling>
         <periodicRestart requests="200" />
      </recycling>
   </applicationPoolDefaults>
</applicationPools>

Beispielcode

In den folgenden Beispielen werden die Anwendungspools so konfiguriert, dass sie automatisch gestartet werden, um Version 2.0 der .NET-Umgebung zu verwenden und standardmäßig die integrierte Pipeline zu verwenden.

AppCmd.exe

appcmd.exe set config -section:system.applicationHost/applicationPools /applicationPoolDefaults.autoStart:"True" /commit:apphost

appcmd.exe set config -section:system.applicationHost/applicationPools /applicationPoolDefaults.managedRuntimeVersion:"v2.0" /commit:apphost

appcmd.exe set config -section:system.applicationHost/applicationPools /applicationPoolDefaults.managedPipelineMode:"Integrated" /commit:apphost

Hinweis

Sie müssen unbedingt den Commitparameter apphost festlegen, 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 applicationPoolsSection = config.GetSection("system.applicationHost/applicationPools");

         ConfigurationElement applicationPoolDefaultsElement = applicationPoolsSection.GetChildElement("applicationPoolDefaults");
         applicationPoolDefaultsElement["autoStart"] = true;
         applicationPoolDefaultsElement["managedRuntimeVersion"] = @"v2.0";
         applicationPoolDefaultsElement["managedPipelineMode"] = @"Integrated";

         serverManager.CommitChanges();
      }
   }
}

VB.NET

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

Class Sample
   Shared Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim applicationPoolsSection As ConfigurationSection = config.GetSection("system.applicationHost/applicationPools")
      Dim applicationPoolDefaultsElement As ConfigurationElement = applicationPoolsSection.GetChildElement("applicationPoolDefaults")
      applicationPoolDefaultsElement("autoStart") = True
      applicationPoolDefaultsElement("managedRuntimeVersion") = "v2.0"
      applicationPoolDefaultsElement("managedPipelineMode") = "Integrated"
      serverManager.CommitChanges()
   End Sub
End Class

JavaScript

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

var applicationPoolsSection = adminManager.GetAdminSection("system.applicationHost/applicationPools", "MACHINE/WEBROOT/APPHOST");
var applicationPoolDefaultsElement = applicationPoolsSection.ChildElements.Item("applicationPoolDefaults");
applicationPoolDefaultsElement.Properties.Item("autoStart").Value = true;
applicationPoolDefaultsElement.Properties.Item("managedRuntimeVersion").Value = "v2.0";
applicationPoolDefaultsElement.Properties.Item("managedPipelineMode").Value = "Integrated";

adminManager.CommitChanges();

VBScript

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

Set applicationPoolsSection = adminManager.GetAdminSection("system.applicationHost/applicationPools", "MACHINE/WEBROOT/APPHOST")
Set applicationPoolDefaultsElement = applicationPoolsSection.ChildElements.Item("applicationPoolDefaults")
applicationPoolDefaultsElement.Properties.Item("autoStart").Value = True
applicationPoolDefaultsElement.Properties.Item("managedRuntimeVersion").Value = "v2.0"
applicationPoolDefaultsElement.Properties.Item("managedPipelineMode").Value = "Integrated"

adminManager.CommitChanges()