Share via


Aggiunta dell'aggiunta della pagina <di inizializzazione>

Panoramica

L'elemento <add> nell'elemento <applicationInitialization> specifica l'applicazione da inizializzare al riavvio dell'applicazione. Per eseguire il processo di inizializzazione dell'applicazione, IIS invia una richiesta fittizia all'applicazione per richiedere l'inizializzazione. È possibile specificare più URL dell'applicazione usando più <add> tag. Queste applicazioni non vengono gestite a un richiedente. La pagina specificata dall'attributo RemapManagedRequestsTo nell'elemento <applicationInitialization> verrà servita al cliente.

Compatibilità

Versione Note
IIS 10.0 L'elemento <add> non è stato modificato in IIS 10.0.
IIS 8,5 L'elemento <add> non è stato modificato in IIS 8.5.
IIS 8,0 L'elemento <add> è stato introdotto in IIS 8.0.
IIS 7,5 N/D
IIS 7.0 N/D
IIS 6.0 N/D

Installazione

Per supportare l'inizializzazione dell'applicazione nel server Web, è necessario installare il ruolo o la funzionalità di inizializzazione dell'applicazione.

Windows Server 2012 o Windows Server 2012 R2

  1. Sulla barra delle applicazioni fare clic su Server Manager.
  2. In Server Manager fare clic sul menu Gestisci e quindi su Aggiungi ruoli e funzionalità.
  3. Nella procedura guidata Aggiungi ruoli e funzionalità fare clic su Avanti. Selezionare il tipo di installazione e fare clic su Avanti. Selezionare il server di destinazione e fare clic su Avanti.
  4. Nella pagina Ruoli server espandere Server Web (IIS) espandere Server Web, espandere Server Web, espandere Sviluppo applicazioni e quindi selezionare Inizializzazione applicazione. Fare clic su Avanti.
    Screenshot del nodo Server Web e Sviluppo applicazioni espanso nella pagina Ruoli server con l'inizializzazione dell'applicazione selezionata. .
  5. Nella pagina Selezione funzionalità fare clic su Avanti.
  6. Nella pagina Conferma selezioni per l'installazione fare clic su Installa.
  7. Nella pagina Risultati fare clic su Chiudi.

Windows 8 o Windows 8.1

  1. Nella schermata Start spostare il puntatore nell'angolo inferiore sinistro, fare clic con il pulsante destro del mouse sul pulsante Start e quindi fare clic su Pannello di controllo.
  2. In Pannello di controllo fare clic su Programmi e funzionalità e quindi su Attiva o disattiva le funzionalità di Windows.
  3. Espandere Internet Information Services, espandere Servizi Web a livello mondiale, espandere Funzionalità di sviluppo applicazioni e quindi selezionare Inizializzazione applicazione.
    Screenshot che mostra il nodo Funzionalità di sviluppo applicazioni espanso e inizializzazione dell'applicazione selezionata.
  4. Fare clic su OK.
  5. Fare clic su Close.

Procedure

Come configurare l'inizializzazione dell'applicazione

  1. Aprire Gestione Internet Information Services (IIS):

    • Se si usa Windows Server 2012 o versione successiva:

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

      • Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
      • Fare clic su Strumenti di amministrazione e quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessioni selezionare il server o espandere il server, espandere Siti e quindi selezionare un sito.

  3. Nel riquadro Home fare doppio clic sulla funzionalità Editor di configurazione .

  4. Se è stato selezionato un sito, selezionare il nome> del sito Web.confignella casella di testo Da e quindi selezionare<system.webServer/applicationInitialization nella casella di testo Sezione.

  5. Se è stato selezionato il server, selezionare system.webServer/applicationInitialization nella casella di testo Sezione .

    Screenshot della funzionalità Dell'editor di configurazione che mostra la riga di raccolta selezionata e ignora l'opzione Moduli gestiti impostata su true.

  6. Per specificare il nome di un file statico da restituire durante l'inizializzazione, impostare remapManagedRequestsTo sul nome del file.

  7. Se non si desidera caricare moduli gestiti, impostare skipManagedModules su true.

  8. Per specificare che il processo di inizializzazione viene avviato automaticamente ogni volta che si verifica un riavvio dell'applicazione, impostare doAppInitAfterRestart su true.

  9. Per specificare l'applicazione o le applicazioni da inizializzare al riavvio dell'applicazione, fare clic sulla riga (Raccolta) e quindi fare clic sui puntini di sospensione.

  10. Nell'editor raccolta, per aggiungere un'applicazione da inizializzare, fare clic su Aggiungi, fare clic su hostName e quindi impostare hostName sul nome dell'host. Fare clic su inizializzazionePage e impostarlo su un URL per l'applicazione. Chiudere la finestra di dialogo.

    Screenshot della finestra di dialogo Editor raccolta che mostra l'opzione Aggiungi nel riquadro Azioni e nel nome host evidenziato nella sezione Proprietà.

  11. Fare clic su Applica nel riquadro Azioni .

Configurazione

L'elemento <add> dell'elemento <applicationInitialization> è configurato a livello di server, sito o applicazione.

Attributi

Attributo Descrizione
initializationPage Attributo stringa obbligatorio.

Specifica l'URL di un'applicazione da inizializzare al riavvio dell'applicazione.

Il valore predefinito è "".
hostName Attributo stringa facoltativo.

Nome host da usare con l'URL dell'applicazione fornito nell'attributo initializationPage.

Il valore predefinito è "".

Elementi figlio

Nessuno.

Esempio di configurazione

Nell'esempio seguente viene illustrata la configurazione dell'inizializzazione dell'applicazione.

<system.webServer>
   <applicationInitialization
      doAppInitAfterRestart="true"
      skipManagedModules="true"
      remapManagedRequestsTo="filename.htm"/>
      <add initializationPage="/default.aspx" hostName="myhost"/>
   </applicationInitialization>
</system.webServer>

Codice di esempio

Gli esempi seguenti configurano <l'applicazioneInitialization> per un sito.

AppCmd.exe

appcmd.exe set config "Default Web Site" -section:system.webServer/applicationInitialization /remapManagedRequestsTo:"HelloJoe.htm" /skipManagedModules:"True" /doAppInitAfterRestart:"True"  /commit:apphost

appcmd.exe set config "Default Web Site" -section:system.webServer/applicationInitialization /+"[initializationPage='JoesSite.htm',hostName='JoesHost']" /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 applicationInitializationSection = config.GetSection("system.webServer/applicationInitialization", "Default Web Site");
            applicationInitializationSection["remapManagedRequestsTo"] = @"HelloJoe.htm";
            applicationInitializationSection["skipManagedModules"] = true;
            applicationInitializationSection["doAppInitAfterRestart"] = true;
            
            ConfigurationElementCollection applicationInitializationCollection = applicationInitializationSection.GetCollection();
            
            ConfigurationElement addElement = applicationInitializationCollection.CreateElement("add");
            addElement["initializationPage"] = @"JoesSite.htm";
            addElement["hostName"] = @"JoesHost";
            applicationInitializationCollection.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 applicationInitializationSection As ConfigurationSection = config.GetSection("system.webServer/applicationInitialization", "Default Web Site")
         applicationInitializationSection("remapManagedRequestsTo") = "HelloJoe.htm"
         applicationInitializationSection("skipManagedModules") = true
         applicationInitializationSection("doAppInitAfterRestart") = true
         Dim applicationInitializationCollection As ConfigurationElementCollection = applicationInitializationSection.GetCollection
         Dim addElement As ConfigurationElement = applicationInitializationCollection.CreateElement("add")
         addElement("initializationPage") = "JoesSite.htm"
         addElement("hostName") = "JoesHost"
         applicationInitializationCollection.Add(addElement)
         serverManager.CommitChanges
     End Sub
 End Module

JavaScript

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

var applicationInitializationSection = adminManager.GetAdminSection("system.webServer/applicationInitialization", "MACHINE/WEBROOT/APPHOST/Default Web Site");
applicationInitializationSection.Properties.Item("remapManagedRequestsTo").Value = "HelloJoe.htm";
applicationInitializationSection.Properties.Item("skipManagedModules").Value = true;
applicationInitializationSection.Properties.Item("doAppInitAfterRestart").Value = true;

var applicationInitializationCollection = applicationInitializationSection.Collection;

var addElement = applicationInitializationCollection.CreateNewElement("add");
addElement.Properties.Item("initializationPage").Value = "JoesSite.htm";
addElement.Properties.Item("hostName").Value = "JoesHost";
applicationInitializationCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

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

Set applicationInitializationSection = adminManager.GetAdminSection("system.webServer/applicationInitialization", "MACHINE/WEBROOT/APPHOST/Default Web Site")
applicationInitializationSection.Properties.Item("remapManagedRequestsTo").Value = "HelloJoe.htm"
applicationInitializationSection.Properties.Item("skipManagedModules").Value = true
applicationInitializationSection.Properties.Item("doAppInitAfterRestart").Value = true

Set applicationInitializationCollection = applicationInitializationSection.Collection

Set addElement = applicationInitializationCollection.CreateNewElement("add")
addElement.Properties.Item("initializationPage").Value = "JoesSite.htm"
addElement.Properties.Item("hostName").Value = "JoesHost"
applicationInitializationCollection.AddElement(addElement)

adminManager.CommitChanges()

PowerShell

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location 'Default Web Site' -filter "system.webServer/applicationInitialization" -name "remapManagedRequestsTo" -value "HelloJoe.htm"
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location 'Default Web Site' -filter "system.webServer/applicationInitialization" -name "skipManagedModules" -value "True"
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location 'Default Web Site' -filter "system.webServer/applicationInitialization" -name "doAppInitAfterRestart" -value "True"

Add-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -location 'Default Web Site' -filter "system.webServer/applicationInitialization" -name "." -value @{initializationPage='JoesSite.htm';hostName='JoesHost'}