venerdì 19 ottobre 2012

Why would an aspx file return 404 (“The page cannot be found”)

http://stackoverflow.com/questions/467188/why-would-an-aspx-file-return-404-the-page-cannot-be-found

It could be a lot of things. I had this issue today because .NET had not been re-initialized after installing IIS (aspnet_regiis -i -enable or equivalent).
That's it... the full path looks like the following: C:\WINDOWS\Microsoft.NET\Framework\v2.0xxxxxx\aspnet_regiis.exe -I (now at least I'm getting ameaningful error with my aspx file) – CodeSlave Jan 22 '09 at 15:57

AND you also have to go into IIS Manager -> Servername -> "Web Service Extensions", and set ASP.NET v2.0xxxxxx to Allowed. – CodeSlave Jan 22 '09 at 16:09


 
Just add -enable to the end of the aspnet_regiis command to load it as Allowed from the start:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe –i -enable – Kit Roed Jul 14 '09 at 20:44

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

.NET Framework 2.0
3 di 5 hanno valutato il contenuto utile: Valuta questo argomento

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.
NotaNota
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]

OpzioneDescrizione
-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 protezione 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 protezione 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 processo di lavoro IIS dopo l'installazione o l'aggiornamento degli scriptmap ASP.NET.
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

OpzioneDescrizione
-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.

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.
NotaNota
‎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.
NotaNota
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.
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.
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 delle directory principali delle applicazioni, vedere la documentazione relativa a IIS all'indirizzo http://www.microsoft.com/WindowsServer2003/iis/default.mspx (informazioni in lingua inglese).

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

Nessun commento: