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
- Sulla barra delle applicazioni fare clic su Server Manager.
- In Server Manager fare clic sul menu Gestisci e quindi su Aggiungi ruoli e funzionalità.
- 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.
- 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.
.
- Nella pagina Selezione funzionalità fare clic su Avanti.
- Nella pagina Conferma selezioni per l'installazione fare clic su Installa.
- Nella pagina Risultati fare clic su Chiudi.
Windows 8 o Windows 8.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.
- In Pannello di controllo fare clic su Programmi e funzionalità e quindi su Attiva o disattiva le funzionalità di Windows.
- Espandere Internet Information Services, espandere Servizi Web a livello mondiale, espandere Funzionalità di sviluppo applicazioni e quindi selezionare Inizializzazione applicazione.
- Fare clic su OK.
- Fare clic su Close.
Procedure
Come configurare l'inizializzazione dell'applicazione
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).
Nel riquadro Connessioni selezionare il server o espandere il server, espandere Siti e quindi selezionare un sito.
Nel riquadro Home fare doppio clic sulla funzionalità Editor di configurazione .
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.
Se è stato selezionato il server, selezionare system.webServer/applicationInitialization nella casella di testo Sezione .
Per specificare il nome di un file statico da restituire durante l'inizializzazione, impostare remapManagedRequestsTo sul nome del file.
Se non si desidera caricare moduli gestiti, impostare skipManagedModules su true.
Per specificare che il processo di inizializzazione viene avviato automaticamente ogni volta che si verifica un riavvio dell'applicazione, impostare doAppInitAfterRestart su true.
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.
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.
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'}