Strumento di ASP.NET per la registrazione di IIS (Aspnet_regiis.exe)
Aggiornamento: novembre 2007
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. |
-paaccount contenitore |
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:
|
-pc contenitore |
Crea una coppia di chiavi pubblica/privata RSA nel contenitore specificato. Sono accettati i seguenti modificatori facoltativi:
|
-pd sezione |
Decrittografa la sezione di configurazione. Sono accettati i seguenti parametri facoltativi:
|
-pdf sezione webApplicationDirectory |
Decrittografa una determinata sezione di configurazione del file Web.config nella directory fisica (non virtuale) specificata. |
-pe sezione |
Crittografa la sezione di configurazione specificata. Sono accettati i seguenti modificatori facoltativi:
|
-pef section webApplicationDirectory |
Crittografa una determinata sezione di configurazione del file Web.config nella directory fisica (non virtuale) specificata. |
-pi file contenitore |
Importa una coppia di chiavi pubblica/privata RSA nel contenitore specificato per container dal file XML specificato. Sono accettati i seguenti modificatori facoltativi:
|
-praccount contenitore |
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:
|
-px file contenitore |
Esporta una coppia di chiavi pubblica/privata RSA da un determinato contenitore nel file XML specificato. Sono accettati i seguenti modificatori facoltativi:
|
-pz contenitore |
Elimina il contenitore di chiavi specificato. È accettato il seguente modificatore facoltativo:
|
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