Condividi tramite


Aggiunta dell'elemento Modules <add> per Internet Information Services (IIS) 7;

Panoramica

L'elemento <add><modules> della raccolta aggiunge un modulo all'elenco di moduli per Internet Information Services (IIS) 7.

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> non è stato modificato in IIS 8.0.
IIS 7.5 L'elemento <add> non è stato modificato in IIS 7.5.
IIS 7.0 L'elemento <add><modules> della raccolta è stato introdotto in IIS 7.0.
IIS 6.0 N/D

Attrezzaggio

L'elemento <add><modules> della raccolta è incluso nell'installazione predefinita di IIS 7.

Procedure

Come aggiungere un modulo gestito all'applicazione

  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, su Strumentie quindi su Gestione Internet Information Services (IIS).
    • Se usi 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 Amministrazione istrative, 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 Amministrazione istrative e 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 Amministrazione istrative e quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessione ions espandere il nome del server, espandere Siti e quindi passare al sito Web o all'applicazione a cui si vuole aggiungere un modulo gestito.

  3. Nel riquadro Home fare doppio clic su Moduli.
    Screenshot del riquadro Home che mostra Moduli evidenziati.

  4. Nel riquadro Azioni fare clic su Aggiungi modulo gestito.

  5. Nella finestra di dialogo Aggiungi modulo gestito immettere il nome del modulo gestito nella casella Nome e quindi immettere o selezionare il tipo completo di .NET Framework del modulo nella casella Tipo.

  6. Selezionare l'opzione Invoke only for requests to ASP.NET applications or managed handlers (Richiama solo per le richieste a ASP.NET applicazioni o gestori gestiti) se si vuole che il modulo risponda solo alle richieste gestite.
    Immagine della finestra di dialogo Aggiungi modulo gestito che mostra le caselle Nome e Tipo con Invoke solo per le richieste alle applicazioni A S P dot Net o all'opzione gestori gestiti.

  7. Fare clic su OK.

Impostazione

Attributi

Attributo Descrizione
name Attributo stringa obbligatorio.

Specifica il nome univoco di un modulo gestito nel server Web.
preCondition Attributo stringa facoltativo. Specifica le condizioni in cui verrà eseguito il modulo.

L'attributo preCondition può essere uno o più dei valori possibili seguenti. Se si specificano più valori, separare i valori con una virgola (,).

Valore Descrizione
bitness32 Specificare il valore bitness32 quando il modulo è un file di .dll a 32 bit. IIS deve caricare il gestore solo per i processi di lavoro eseguiti in modalità WOW64 (simulazione a 32 bit) in un sistema operativo a 64 bit.
bitness64 Specificare il valore bitness64 quando il modulo è un file di .dll a 64 bit. IIS deve caricare il gestore solo per i processi di lavoro eseguiti in modalità a 64 bit.
integratedMode Specificare il valore integratedMode quando il modulo deve rispondere solo alle richieste nei pool di applicazioni configurate per l'uso della pipeline di elaborazione delle richieste integrata.
ISAPIMode Specificare il valore ISAPIMode quando il modulo deve rispondere solo alle richieste nei pool di applicazioni configurate per l'uso della modalità classica.
managedHandler Specificare il valore managedHandler quando il modulo deve elaborare le richieste solo per le risorse gestite, ad esempio i file .aspx, e non deve rispondere alle richieste di risorse non gestite, ad esempio .html file.
runtimeVersionv1.1 Specificare il valore runtimeVersionv1.1 quando il modulo deve rispondere solo alle richieste nei pool di applicazioni configurate per l'uso di .NET Framework versione 1.1.
runtimeVersionv2.0 Specificare il valore runtimeVersionv2.0 quando il modulo deve rispondere solo alle richieste nei pool di applicazioni configurate per l'uso di .NET Framework versione 2.0.
runtimeVersionv4.0 Specificare il valore runtimeVersionv4.0 quando il modulo deve rispondere solo alle richieste nei pool di applicazioni configurate per l'uso di .NET Framework versione 4.0.
type Attributo stringa facoltativo.

Specifica il tipo gestito di un modulo gestito. L'attributo type non si applica ai moduli nativi.

Elementi figlio

Nessuno.

Esempio di configurazione

Nell'esempio viene configurato un modulo per un'applicazione Web in esecuzione in modalità integrata IIS 7.

<configuration>
   <system.webServer>
      <modules>
         <add name="Header" type="Contoso.ShoppingCart.Header"/>
      </modules>
   </system.webServer>
</configuration>

Codice di esempio

Nota

Gli esempi in questo documento illustrano l'uso di un assembly con codice gestito archiviato nella Global Assembly Cache (GAC) di .NET. Prima di usare il codice in questi esempi per distribuire assembly personalizzati, è necessario recuperare le informazioni sull'assembly dalla GAC. A tale scopo, seguire questa procedura:

  • In Esplora risorse aprire il percorso C:\Windows\assembly, dove C: è l'unità del sistema operativo.
  • Individuare l'assembly.
  • Fare clic con il pulsante destro del mouse sull'assembly e scegliere Proprietà.
  • Copiare il valore Culture, ad esempio Neutral.
  • Copiare il numero di versione , ad esempio 1.0.0.0.
  • Copiare il valore del token di chiave pubblica, ad esempio 426f62526f636b73.
  • Fare clic su Annulla.

Gli esempi di codice seguenti abilitano un modulo gestito per un sito Web denominato Contoso. La proprietà name definisce il nome CartHeader per il modulo, la proprietà type definisce il tipo gestito per il modulo, la proprietà preCondition definisce che IIS richiama il modulo solo per le richieste gestite.

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/modules /+"[name='CartHeader',type='Contoso.ShoppingCart.Header',preCondition='managedHandler']"

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.GetWebConfiguration("Contoso");
         ConfigurationSection modulesSection = config.GetSection("system.webServer/modules");
         ConfigurationElementCollection modulesCollection = modulesSection.GetCollection();

         ConfigurationElement addElement = modulesCollection.CreateElement("add");
         addElement["name"] = @"CartHeader";
         addElement["type"] = @"Contoso.ShoppingCart.Header";
         addElement["preCondition"] = @"managedHandler";
         modulesCollection.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.GetWebConfiguration("Contoso")
      Dim modulesSection As ConfigurationSection = config.GetSection("system.webServer/modules")
      Dim modulesCollection As ConfigurationElementCollection = modulesSection.GetCollection

      Dim addElement As ConfigurationElement = modulesCollection.CreateElement("add")
      addElement("name") = "CartHeader"
      addElement("type") = "Contoso.ShoppingCart.Header"
      addElement("preCondition") = "managedHandler"
      modulesCollection.Add(addElement)

      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso";
var modulesSection = adminManager.GetAdminSection("system.webServer/modules", "MACHINE/WEBROOT/APPHOST/Contoso");
var modulesCollection = modulesSection.Collection;

var addElement = modulesCollection.CreateNewElement("add");
addElement.Properties.Item("name").Value = "CartHeader";
addElement.Properties.Item("type").Value = "Contoso.ShoppingCart.Header";
addElement.Properties.Item("preCondition").Value = "managedHandler";
modulesCollection.AddElement(addElement);

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Contoso"
Set modulesSection = adminManager.GetAdminSection("system.webServer/modules", "MACHINE/WEBROOT/APPHOST/Contoso")
Set modulesCollection = modulesSection.Collection

Set addElement = modulesCollection.CreateNewElement("add")
addElement.Properties.Item("name").Value = "CartHeader"
addElement.Properties.Item("type").Value = "Contoso.ShoppingCart.Header"
addElement.Properties.Item("preCondition").Value = "managedHandler"
modulesCollection.AddElement addElement

adminManager.CommitChanges()