Condividi tramite


ApplicationPoolDefaults defaults <del pool di applicazioni>

Panoramica

La <applicationPoolDefaults> raccolta della <applicationPools> raccolta configura i valori predefiniti per tutti i pool di applicazioni in un server Web.

Nota

Tutti i valori predefiniti non definiti in modo esplicito nella <applicationPoolDefaults> raccolta erediteranno comunque i valori predefiniti nello schema IIS 7 e versioni successive e le singole impostazioni del pool di applicazioni sostituiscono tutti i valori predefiniti.

Compatibilità

Versione Note
IIS 10.0 L'elemento <applicationInitialization> non è stato modificato in IIS 10.0.
IIS 8,5 L'elemento <applicationInitialization> non è stato modificato in IIS 8.5.
IIS 8,0 È stato aggiunto un altro valore ("v4.0") all'attributo managedRuntimeVersion in IIS 8.0 e il relativo valore predefinito è stato modificato in "" anziché "v2.0".
IIS 7,5 L'elemento <applicationPoolDefaults> non è stato modificato in IIS 7.5.
IIS 7.0 L'elemento <applicationPoolDefaults> è stato introdotto in IIS 7.0.
IIS 6.0 L'elemento <applicationPoolDefaults> sostituisce parti della proprietà metabase IIS 6.0 IIsApplicationPools .

Installazione

La <applicationPools> raccolta è inclusa nell'installazione predefinita di IIS 7 e versioni successive.

Procedure

Come configurare le impostazioni predefinite del pool di applicazioni

  1. Aprire Gestione Internet Information Services (IIS):

    • Se si usa Windows Server 2012 o Windows Server 2012 R2:

      • Sulla barra delle applicazioni fare clic su Server Manager, scegliere Strumenti, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows 8 o Windows 8.1:

      • Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
      • Fare clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Server 2008 o Windows Server 2008 R2:

      • Sulla barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Vista o Windows 7:

      • Sulla barra delle applicazioni fare clic su Start e quindi su Pannello di controllo.
      • Fare doppio clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessioni espandere il nome del server e quindi fare clic su Pool di applicazioni.

  3. Nel riquadro Azioni fare clic su Imposta impostazioni predefinite pool di applicazioni...
    Screenshot della schermata Pool di applicazioni, che mostra il campo Filtro.

  4. Nella finestra di dialogo Impostazioni predefinite pool di applicazioni specificare le opzioni desiderate.
    Screenshot della finestra di dialogo Impostazioni predefinite pool di applicazioni.

  5. Dopo aver specificato le impostazioni, fare clic su OK.

Configurazione

Attributi

Attributo Descrizione
autoStart Attributo booleano facoltativo.

Se true, indica al servizio pubblicazione Web (W3SVC) che il pool di applicazioni deve essere avviato automaticamente al momento della creazione o all'avvio di IIS.

Il valore predefinito è true.
CLRConfigFile Valore stringa facoltativo.

Specifica il file di configurazione .NET per il pool di applicazioni.

Nota: Questo attributo è stato aggiunto in IIS 7.5.

Non è previsto alcun valore predefinito.
enable32BitAppOnWin64 Attributo booleano facoltativo.

Se true, consente l'esecuzione di un'applicazione a 32 bit in un computer che esegue una versione a 64 bit di Windows.

Il valore predefinito è false.
managedPipelineMode Attributo di enumerazione facoltativo.

Specifica la modalità di elaborazione delle richieste utilizzata per elaborare le richieste per il contenuto gestito.

L'attributo managedPipelineMode può essere uno dei valori possibili seguenti; il valore predefinito è Integrated.
Valore Descrizione
Classic Specifica che il pool di applicazioni utilizza pipeline iis e ASP.NET di elaborazione delle richieste, che funzionano con ASP.NET applicazioni 1.1 e ASP.NET 2.0 applicazioni che non funzionano in modalità integrata.

Il valore numerico è 1.
Integrated Specifica che il pool di applicazioni usa IIS integrato e ASP.NET pipeline di elaborazione delle richieste, che funziona solo con ASP.NET 2.0 o versioni successive.

Il valore numerico è 0.
managedRuntimeLoader Attributo stringa facoltativo.

Specifica il caricatore gestito da usare per il precaricare il pool di applicazioni.

Nota: Questo attributo è stato aggiunto in IIS 7.5.

Il valore predefinito è webengine4.dll.
managedRuntimeVersion Attributo stringa facoltativo.

Specifica la versione di .NET Framework da usare dal pool di applicazioni.

L'attributo managedRuntimeVersion può essere uno dei valori possibili seguenti; il valore predefinito è "".
Valore Descrizione
v1.1 Specifica che il pool di applicazioni usa .NET Framework versione 1.1.
v2.0 Specifica che il pool di applicazioni usa .NET Framework versione 2.0.
v4.0 Specifica che il pool di applicazioni usa .NET Framework versione 4.0.
name Attributo stringa obbligatorio.

Specifica un nome univoco per un pool di applicazioni nel server.
queueLength Attributo uint facoltativo.

Indica di HTTP.sys il numero di richieste da accodare per un pool di applicazioni prima di rifiutare le richieste future.

Quando viene superato il valore impostato per questa proprietà, IIS rifiuta le richieste successive con un errore 503. Se l'impostazione loadBalancerCapabilities è true, la connessione viene chiusa anziché rifiutare le richieste con un valore 503. Per altre informazioni su loadBalancerCapabilities, vedere Impostazioni degli errori per un pool di applicazioni.

Il valore predefinito è 1000.
startMode Valore di enumerazione facoltativo.

Specifica il tipo di avvio per il pool di applicazioni.

Nota: Questo attributo è stato aggiunto in IIS 7.5.

L'attributo startMode può essere uno dei valori possibili seguenti; il valore predefinito è OnDemand.
Valore Descrizione
AlwaysRunning Specifica che il servizio di attivazione dei processi di Windows (WAS) avvierà sempre il pool di applicazioni. Questo comportamento consente a un'applicazione di caricare l'ambiente operativo prima di gestire eventuali richieste HTTP, riducendo l'elaborazione di avvio per le richieste HTTP iniziali per l'applicazione.

Il valore numerico è 1.
OnDemand Specifica che il servizio di attivazione dei processi di Windows (WAS) avvierà il pool di applicazioni quando viene effettuata una richiesta HTTP per un'applicazione ospitata nel pool di applicazioni. Questo comportamento è simile al comportamento WAS nelle versioni precedenti di IIS.

Il valore numerico è 0.

Elementi figlio

Elemento Descrizione
cpu Configura l'affinità della CPU e le azioni della CPU.
environmentVariables Configura una raccolta di variabili di ambiente da passare ai processi di lavoro.
failure Configura le azioni da eseguire quando un pool di applicazioni ha esito negativo.
processModel Configura gli attributi di gestione dei processi per un pool di applicazioni.
recycling Configura il riciclo del pool di applicazioni.

Esempio di configurazione

L'esempio di configurazione seguente specifica l'identità predefinita per tutti i pool di applicazioni come identità del pool di applicazioni predefinita e specifica 200 come numero predefinito di richieste dopo il quale i pool di applicazioni vengono riciclati.

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

Codice di esempio

Gli esempi seguenti configurano i pool di applicazioni per avviare automaticamente, per usare la versione 2.0 dell'ambiente .NET e per usare la pipeline integrata per impostazione predefinita.

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

Nota

È necessario assicurarsi di impostare il parametro commit su apphost quando si usa AppCmd.exe per configurare queste impostazioni. Questa operazione esegue il commit delle impostazioni di configurazione nella sezione percorso appropriata nel file di ApplicationHost.config.

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()