Problema nell'esecuzione del sito Web .net framework 4.0 su iis 7.0


119

Ehi, ho problemi a far funzionare il .NET framework 4.0sito web IIS7.0. l'errore che ho ricevuto è come:

Errore HTTP 404.2 - Non trovato "La pagina richiesta non può essere servita a causa delle impostazioni dell'elenco di restrizioni ISAPIe CGIsul server Web".

Module : IsapiModule , 
Notification : ExecuteRequestHandler, 
Handler : PageHandlerFactory-ISAPI-4.0_32bit , 
Error Code : 0x800704ec

Risposte:


289

Vai al gestore IIS e fai clic sul nome del server. Quindi fare clic sull'icona "Restrizioni ISAPI e CGI" sotto l'intestazione IIS. Modificare ASP.NET 4.0 da "Non consentito" a "Consentito".


44
enfatizzare: fare clic su NOME SERVER non NOME SITO per trovare l'opzione
MacGyver

1
in realtà, non ho nemmeno l'opzione CGI. Sto usando Windows 7, 64 bit. Sto cercando di far funzionare SSRS.
Steam

Amico, mi hai risparmiato tempo :) Grazie :)
Anton Baksheiev

2
assicurati di avviare IIS come amministratore :)
Naveed Ahmad il

Almeno per oggi, sei la mia persona preferita. Questo ha risolto un problema che inseguivo da diverse ore. Bella risposta.
asantaballa

8

Se guardi nelle Restrizioni ISAPI e CGI e tutto è già impostato su Consentito , assicurati che i gestori ASP.NET v4.0.30319 siano anche nell'elenco. Nel mio caso non lo erano. Questo può essere facile da trascurare.


Ne ho aggiunto uno per 32 %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dlle un altro per 64 bit %windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll. Puoi nominarli entrambi allo stesso modo ASP.NET v4.0.30319.

Seleziona Consenti l'esecuzione del percorso dell'estensione .


6
  1. Vai a IIS Manager.
  2. apri il nome del server come (PC-Name)\.
  3. quindi fare doppio clic su ISAPI e restrizione CGI.
  4. quindi selezionare ASP.NET v4.0.30319 (32 bit) Restrizione consentita.

6

Nel mio caso, il problema era più grave: risulta che asp.net non era registrato correttamente.

Questa risposta ha funzionato bene .

ha semplicemente eseguito il seguente comando al prompt dei comandi

%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

Se fossi stato su un sistema a 32 bit, sarebbe stato il seguente:

%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i

3

Passaggio 1: aprire IIS e fare clic sul nome del server Passaggio 2. Fare doppio clic su "Restrizioni ISAPI e CGI" Passaggio 3. Fare clic con il pulsante destro del mouse su ASP.NET v4.0.30319 e selezionare "Consenti"

Dopo aver arrestato e avviato il servizio di pubblicazione sul World Wide Web

1.Andare su Start> Tutti i programmi> Strumenti di amministrazione> Servizi. 2.Nell'elenco dei servizi, fare clic con il pulsante destro del mouse su Servizio Pubblicazione sul Web, quindi fare clic su Arresta (per arrestare il servizio), Avvia (per avviarlo dopo che è stato arrestato) o Riavvia (per riavviare il servizio quando è in esecuzione ).

Pramesh


2

Se stai utilizzando Delphi, o un altro CGI compilato nativo, questa soluzione funzionerà:

  1. Come altro sottolineato, vai al gestore IIS e fai clic sul nome del server. Quindi fare clic sull'icona "Restrizioni ISAPI e CGI" sotto l'intestazione IIS.

  2. Se hai tutto consentito, non funzionerà ancora. È necessario fare clic su "Modifica impostazioni funzionalità" in Azioni (sul lato destro) e selezionare rispettivamente "Consenti moduli CGI non specificati" o "Consenti moduli ISAPI non specificati".

  3. Fare clic su OK


Ho battuto la testa per alcuni giorni e ho dovuto eseguire questa operazione "Modifica impostazioni funzionalità" per far funzionare il plug-in Single Sign-On aziendale in modalità classica
Jay Sullivan

1

Nel nostro caso la soluzione a questo problema non ha coinvolto le impostazioni "ISAPI e CGI Restrictions". L'errore ha iniziato a verificarsi dopo che il personale operativo aveva aggiornato il server a .NET 4.5 per errore, quindi ha eseguito nuovamente il downgrade a .NET 4.0. Ciò ha fatto sì che alcuni dei siti Web IIS dimenticassero i rispettivi pool di applicazioni corretti e alcuni dei pool di applicazioni passassero da .NET Framework 4.0 a 2.0. La modifica di queste impostazioni ha risolto il problema.


1

Se guardi nelle Restrizioni ISAPI e CGI , e tutto è già impostato su Consentito e ASP.NET installato è v4.0.30319 , quindi a destra, nel pannello " Azioni ", fai clic su " Modifica impostazioni funzionalità ... "e seleziona entrambe le caselle. Nel mio caso, non lo erano.


0

Prova a cambiare la modalità pipeline gestito da AppPool da "Integration" a "Classic".


0

A seconda del tipo di applicazione, un'altra cosa da controllare è nelle Impostazioni avanzate per il pool di applicazioni, assicurarsi che "Abilita applicazioni a 32 bit" sia impostato su True.

Avevo controllato tutto in questo thread quando ho avuto questo problema, ma tutto era già stato impostato correttamente, ho scoperto che questo era il problema per me.



-1

Dopo la mappatura dell'applicazione, seguire questi passaggi

Aprire IIS Fare clic su Pool di applicazioni Fare doppio clic sul sito Web Modificare la modalità pipeline di gestione in "classica" fare clic su Ok.

Modificare la versione di .Net Framework nella versione inferiore

Quindi fare clic su OK

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.