Strumento di ASP.NET per la registrazione di IIS (Aspnet_regiis.exe)

Quando più versioni di .NET Framework sono in esecuzione in modalità side-by-side su un unico computer, la versione dell'ISAPI di ASP.NET associata a un'applicazione ASP.NET determina la versione di Common Language Runtime (CLR) utilizzata per l'applicazione. Lo strumento di ASP.NET per la registrazione di IIS (Aspnet_regiis.exe) consente a un amministratore o a un programma di installazione di aggiornare con facilità gli scriptmap di un'applicazione ASP.NET in modo che puntino alla versione dell'ISAPI di ASP.NET associata allo strumento. Lo strumento può essere utilizzato anche per visualizzare lo stato di tutte le versioni installate di ASP.NET, registrare la versione di ASP.NET associata allo strumento, creare directory di script client ed eseguire altre operazioni di configurazione.

Nota

Sono disponibili due strumenti di registrazione di IIS con .NET Framework, uno per i sistemi standard, l'altro per i sistemi a 64 bit. Quest'ultimo si trova all'interno della cartella Windows nella directory Framework64 della directory Microsoft.NET, ad esempio C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727.

aspnet_regiis [options]

Opzioni

Opzione Descrizione

-c

Installa gli script del lato client per ASP.NET, ad esempio gli script di convalida del lato client, nella sottodirectory aspnet_client di ogni directory di sito IIS (Internet Information Services).

Vengono installati solo gli script del lato client relativi alla versione di ASP.NET associata allo strumento Aspnet_regiis.exe.

-disable

Disattiva ASP.NET nella console di sicurezza di IIS.

Questa opzione può essere specificata solo in combinazione con -i, -ir o -r e non è disponibile nelle versioni di IIS precedenti la 6.0.

-e

Rimuove gli script del lato client per ASP.NET dalla sottodirectory aspnet_client di ogni directory di sito IIS.

Vengono rimossi solo gli script del lato client relativi alla versione di ASP.NET associata allo strumento Aspnet_regiis.exe.

-ea

Rimuove gli script del lato client per tutte le versioni di ASP.NET dalla sottodirectory aspnet_client di ogni directory di sito IIS.

-enable

Attiva ASP.NET nella console di sicurezza di IIS.

Questa opzione può essere specificata solo in combinazione con -i, -ir o -r e non è disponibile nelle versioni di IIS precedenti la 6.0, né nelle versioni di ASP.NET precedenti la 2.0.

-ga user

Concede all'utente o al gruppo specificato l'accesso alla metabase di IIS e alle altre directory utilizzate da ASP.NET.

Questa opzione non è disponibile nelle versioni di ASP.NET precedenti la 2.0.

-i

Installa la versione di ASP.NET associata allo strumento Aspnet_regiis.exe e aggiorna gli scriptmap nella directory principale della metabase di IIS e nelle relative sottodirectory.

Vengono aggiornati solo gli scriptmap per le applicazioni che utilizzano una versione di ASP.NET precedente. L'aggiornamento non influisce sulle applicazioni che utilizzano una versione successiva.

-ir

Installa la versione di ASP.NET associata allo strumento Aspnet_regiis.exe e registra solo ASP.NET in IIS.

Con questa opzione non viene eseguito l'aggiornamento degli scriptmap. Per installare ASP.NET e aggiornare gli scriptmap, utilizzare l'opzione -i.

-k path

Rimuove gli scriptmap per tutte le versioni di ASP.NET da tutte le applicazioni ASP.NET nel percorso della directory principale dell'applicazione specificato e nelle relative sottodirectory.

-kn path

Rimuove gli scriptmap per tutte le versioni di ASP.NET dall'applicazione ASP.NET solo nel percorso della directory principale dell'applicazione specificato.

Questa opzione non influisce sulle applicazioni presenti nelle sottodirectory di path.

-lk

Elenca il percorso e la versione di tutte le chiavi della metabase di IIS in cui è mappato ASP.NET.

Le chiavi che ereditano gli scriptmap di ASP.NET da una chiave padre non vengono visualizzate.

-lv

Elenca lo stato e il percorso di installazione di tutte le versioni di ASP.NET installate nel computer.

-norestart

Impedisce il riavvio del servizio Pubblicazione sul Web dopo l'installazione o l'aggiornamento degli scriptmap ASP.NET. Se non si utilizza questa opzione, verranno riciclati tutti i pool di applicazioni.

Utilizzare questa opzione con -i o -r quando il processo di lavoro IIS verrà riavviato manualmente.

-r

Aggiorna tutti gli scriptmap nella metabase di IIS e nei livelli sottostanti in modo che puntino alla versione dell'ISAPI di ASP.NET associata allo strumento Aspnet_regiis.exe.

Tutti gli scriptmap esistenti vengono aggiornati in modo da puntare alla versione dell'ISAPI di ASP.NET associata allo strumento di ASP.NET per la registrazione di IIS, indipendentemente dalla versione corrente.

-s path

Installa lo scriptmap che punta alla versione dell'ISAPI di ASP.NET associata allo strumento Aspnet_regiis.exe in tutte le applicazioni ASP.NET nel percorso della directory principale dell'applicazione specificato e nelle relative sottodirectory. Vengono aggiornati tutti gli scriptmap esistenti nel percorso specificato e nelle directory sottostanti che utilizzano una versione precedente dell'ISAPI di ASP.NET.

-sn path

Installa lo scriptmap che punta alla versione dell'ISAPI di ASP.NET associata allo strumento nell'applicazione ASP.NET nel percorso della directory principale dell'applicazione specificato. Tutti gli scriptmap esistenti nel percorso specificato che utilizzano una versione precedente dell'ISAPI di ASP.NET vengono aggiornati.

Questa opzione non influisce sulle applicazioni presenti nelle sottodirectory di path.

-u

Disinstalla la versione di ASP.NET associata allo strumento di ASP.NET per la registrazione di IIS. Gli scriptmap esistenti per questa versione dell'ISAPI di ASP.NET vengono automaticamente rimappati alla versione dell'ISAPI di ASP.NET più recente ancora installata nel computer.

-ua

Disinstalla tutte le versioni di ASP.NET.

-?

Visualizza la sintassi e le opzioni dei comandi dello strumento di ASP.NET per la registrazione di IIS.

Opzioni di configurazione

Opzione Descrizione

-config+

Attiva l'accesso remoto alla configurazione di ASP.NET nel computer.

-config-

Disattiva l'accesso remoto alla configurazione di ASP.NET nel computer.

-pa container account

Concede all'account di un determinato utente o gruppo l'autorizzazione per l'accesso al contenitore di chiavi specificato per container. Sono accettati i seguenti modificatori facoltativi:

  • -pku   Sostituisce il contenitore predefinito del computer con un contenitore specificato dall'utente.

  • -csp provider   Specifica il provider di contenitori da utilizzare.

  • -full   Specifica che deve essere aggiunto l'accesso completo anziché l'accesso predefinito di sola lettura.

-pc container

Crea una coppia di chiavi pubblica/privata RSA nel contenitore specificato. Sono accettati i seguenti modificatori facoltativi:

  • -size keySize   Specifica la dimensione della chiave. Il valore predefinito è 1024 byte.

  • -pku   Sostituisce il contenitore di chiavi predefinito del computer con un contenitore specificato dall'utente.

  • -exp   Specifica che le chiavi private devono poter essere esportate.

  • -csp provider   Specifica il provider di contenitori da utilizzare.

-pd section

Decrittografa la sezione di configurazione. Sono accettati i seguenti parametri facoltativi:

  • -app virtualPath   Specifica che la decrittografia deve essere eseguita a livello del percorso incluso.

  • -location subPath   Specifica la sottodirectory da decrittografare.

  • -pkm   Specifica che deve essere decrittografato il file Machine.config anziché il file Web.config.

-pdf section webApplicationDirectory

Decrittografa una determinata sezione di configurazione del file Web.config nella directory fisica (non virtuale) specificata.

-pe section

Crittografa la sezione di configurazione specificata. Sono accettati i seguenti modificatori facoltativi:

  • -prov provider   Specifica il provider di crittografia da utilizzare.

  • -app virtualPath   Specifica che la crittografia deve essere eseguita a livello del percorso incluso.

  • -location subPath   Specifica la sottodirectory da crittografare.

  • -pkm   Specifica che deve essere crittografato il file Machine.config anziché il file Web.config.

-pef section webApplicationDirectory

Crittografa una determinata sezione di configurazione del file Web.config nella directory fisica (non virtuale) specificata.

-pi container file

Importa una coppia di chiavi pubblica/privata RSA nel contenitore specificato per container dal file XML specificato. Sono accettati i seguenti modificatori facoltativi:

  • -pku   Sostituisce il contenitore predefinito del computer con un contenitore specificato dall'utente.

  • -exp   Specifica che le chiavi private possono essere esportate.

  • -csp provider   Specifica il provider di contenitori da utilizzare.

-pr container account

Rimuove per l'account di un determinato utente o gruppo l'autorizzazione per l'accesso al contenitore di chiavi specificato per container. Sono accettati i seguenti modificatori facoltativi:

  • -pku   Sostituisce il contenitore predefinito del computer con un contenitore specificato dall'utente.

  • -csp provider   Specifica il provider di contenitori da utilizzare.

-px container file

Esporta una coppia di chiavi pubblica/privata RSA da un determinato contenitore nel file XML specificato. Sono accettati i seguenti modificatori facoltativi:

  • -pku   Sostituisce il contenitore predefinito del computer con un contenitore specificato dall'utente.

  • -csp provider   Specifica il provider di contenitori da utilizzare.

-pz container

Elimina il contenitore di chiavi specificato. È accettato il seguente modificatore facoltativo:

  • -pku   Sostituisce il contenitore predefinito del computer con un contenitore specificato dall'utente.

Note

Quando più versioni di ASP.NET sono installate nel computer, ASP.NET è in esecuzione in modalità side-by-side. In questa configurazione è necessario che Internet Information Services (IIS) conosca la versione dell'ISAPI di ASP.NET (aspnet_isapi.dll) che deve elaborare una pagina in un'applicazione ASP.NET. La versione dell'ISAPI di ASP.NET associata a un'applicazione ASP.NET determina la versione di Common Language Runtime utilizzata per l'applicazione. Un'applicazione ASP.NET viene associata a una versione dell'ISAPI di ASP.NET attraverso uno scriptmap in IIS. Per semplificare il processo di configurazione per un'applicazione ASP.NET, ogni versione di ASP.NET viene fornita con una versione collegata di Aspnet_regiis.exe.

Nota

‎In ogni versione di .NET Framework è inclusa una versione univoca di Aspnet_regiis.exe. Poiché ogni versione dello strumento è applicabile solo alla versione di .NET Framework associata, per configurare un'applicazione ASP.NET è necessario verificare che venga utilizzata la versione dello strumento appropriata.

Lo strumento ASP.NET per la registrazione di IIS viene in genere utilizzato con l'opzione -s o -sn per rimappare un'applicazione ASP.NET e la versione di .NET Framework associata. Utilizzare l'opzione -s per aggiornare un'applicazione nel percorso della directory principale specificato e in tutte le relative sottodirectory. Se non si desidera aggiornare le applicazioni nelle sottodirectory, utilizzare l'opzione -sn. Per aggiornare contemporaneamente gli scriptmap di tutte le applicazioni ASP.NET esistenti nel computer, utilizzare l'opzione -r.

Nota

Il parametro path fa riferimento al percorso della directory principale dell'applicazione, non al percorso fisico. Digitare ad esempio W3SVC/1/ROOT/SampleApp1.

Al contrario, è possibile utilizzare lo strumento di ASP.NET per la registrazione di IIS per rimuovere gli scriptmap di qualsiasi versione di ASP.NET da un'applicazione specificando l'opzione -k o -kn e il percorso della directory principale dell'applicazione. Se quest'ultimo eredita lo scriptmap da un percorso padre, le opzioni -k e -kn non avranno alcun effetto.

L'opzione -norestart impedisce che il servizio Pubblicazione sul Web venga riavviato dopo l'installazione o l'aggiornamento degli scriptmap ASP.NET. Utilizzare questa opzione se non si desidera che vengano riciclati tutti i pool di applicazioni. Se si eseguono più siti Web in IIS, in diversi pool di applicazioni, e non si desidera che vengano riavviati tutti, è consigliabile utilizzare questa opzione.

Anche apportando modifiche tramite la scheda ASP.NET nell'applicazione console Internet Information Services verranno riciclati tutti i pool di applicazioni. Se si desidera cambiare la versione di ASP.NET utilizzata da un'applicazione senza riciclare tutti i pool di applicazioni, eseguire i due comandi seguenti per cambiare la versione.

aspnet_regiis -s w3svc/<instance>/root -norestart
iisapp /a <app pool> /r

Lo strumento di ASP.NET per la registrazione di IIS può essere utilizzato anche per installare e disinstallare la versione di ASP.NET collegata. Per installare ASP.NET e aggiornare gli scriptmap per tutte le applicazioni ASP.NET esistenti, utilizzare l'opzione -i. Per installare ASP.NET senza aggiornare gli scriptmap, utilizzare l'opzione -ir. Per disinstallare la versione di ASP.NET associata allo strumento, utilizzare l'opzione -u. Per disinstallare tutte le versioni di ASP.NET dal computer, utilizzare l'opzione -ua.

Lo strumento di ASP.NET per la registrazione di IIS può essere utilizzato anche per visualizzare le informazioni relative ad ASP.NET. Per visualizzare lo stato e il percorso di installazione delle versioni di ASP.NET installate nel computer, utilizzare l'opzione -lv. Per visualizzare i percorsi di tutte le chiavi della metabase di IIS in cui ASP.NET è mappato, utilizzare l'opzione -lk.

Gli script del lato client, ad esempio la convalida del lato client, possono essere installati e rimossi utilizzando Aspnet_regiis.exe. Per installare lo script del lato client relativo alla versione di ASP.NET associata allo strumento nella sottodirectory Aspnet_client di ogni directory di sito IIS, utilizzare l'opzione -c. Per rimuovere lo script del lato client solo per la versione di ASP.NET associata allo strumento, utilizzare l'opzione -e. Per rimuovere lo script del lato client per tutte le versioni installate di ASP.NET, utilizzare l'opzione -ea.

Utilizzando la rappresentazione, se l'account della rappresentazione non dispone dell'accesso in lettura alla metabase IIS, al tentativo di accesso alla classe DirectoryEntry viene generata l'eccezione COMException con il messaggio di accesso negato. Questo problema può verificarsi se nella directory principale dell'applicazione è contenuta la sottodirectory del codice dell'applicazione e anche se un'applicazione è mappata a una condivisione UNC e l'account UNC non dispone dell'accesso in lettura alla metabase. In entrambi i casi il problema viene risolto eseguendo lo strumento di ASP.NET per la registrazione di IIS con l'opzione **-ga **utente per la rappresentazione o l'account UNC.

Per ulteriori informazioni sull'esecuzione affiancata in ASP.NET, vedere Supporto dell'esecuzione side-by-side in ASP.NET. Per ulteriori informazioni sugli scriptmap e sui percorsi principali delle applicazioni, vedere Documentazione IIS nel sito Web Microsoft (informazioni in lingua inglese).

Esempi

Il comando riportato di seguito installa gli scriptmap che puntano alla versione di ASP.NET associata allo strumento nell'applicazione SampleApp1 e in tutte le relative sottoapplicazioni.

aspnet_regiis -s W3SVC/1/ROOT/SampleApp1

Il comando riportato di seguito aggiorna solo gli scriptmap per l'applicazione SampleApp1, senza influire sulle applicazioni nelle sottodirectory.

aspnet_regiis -sn W3SVC/1/ROOT/SampleApp1

Il comando riportato di seguito installa la versione di ASP.NET associata allo strumento di ASP.NET per la registrazione di IIS e aggiorna gli scriptmap di tutte le applicazioni ASP.NET esistenti. Questa operazione ha effetto solo sulle applicazioni attualmente mappate a una versione precedente di ASP.NET.

aspnet_regiis -i

Il comando riportato di seguito installa la versione di ASP.NET associata allo strumento, ma non aggiorna gli scriptmap delle applicazioni ASP.NET esistenti.

aspnet_regiis -ir

Il comando riportato di seguito visualizza lo stato e il percorso di installazione di tutte le versioni di ASP.NET installate nel computer.

aspnet_regiis -lv

Vedere anche

Riferimenti

Strumenti di .NET Framework

Altre risorse

Supporto dell'esecuzione side-by-side in ASP.NET
Esecuzione affiancata di diverse versioni