Di recente mi è capitato di dover migrare un sito web che girava su IIS 6.0 (Windows Server 2003) fatto in ASP su un IIS 10 (Windows Server 2019).
Dopo aver fatto tutta una serie di modifiche alle pagine ASP ho ricevuto l’errore HTTP Error 500.19 – Internal Server Error
Indagando più approfonditamente ho appurato che il problema era relativo ad un application pool che girava a 32 bit
Di seguito gli steps per risolvere questo problema.
PREREQUISITI
Un account con i privilegi di Administrators del Server
PROBLEMA
DynamicCompressionModule e StaticCompressionModule vengono installati su IIS a livello globale e si propagano ad altri siti Web.
Questi due moduli tentano di caricarsi in ogni pool di applicazioni, indipendentemente dal fatto che sia a 64 o 32 bit, generando l’errore HTTP 500.19 – Codice di errore 0x800700c1 per i siti in esecuzione in modalità a 32 bit.
HTTP Error 500.19 – Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Most likely causes:
The worker process is unable to read the applicationhost.config or web.config file.
There is malformed XML in the applicationhost.config or web.config file.
The server cannot access the applicationhost.config or web.config file because of incorrect NTFS permissions.
Detailed Error Information:
Module DynamicCompressionModule
Notification SendResponse
Handler StaticFile
Error Code 0x800700c1
Requested URL http://web-site:80/
Physical Path E:\Dati\Applicativo
Logon Method Not yet determined
Logon User Not yet determined
SOLUZIONE
Posizionarsi nel seguente path “C:\Windows\System32\inetsrv\config\”
Quindi individuare il file applicationHost.config
Individuare le seguenti voci all’interno di <modules>:
0 1 |
<add name="DynamicCompressionModule" lockItem="true" /> <add name="StaticCompressionModule" lockItem="true" /> |
NOTA BENE: queste voci possono essere trovate anche nelle sezioni <globalModules>, ma le modifiche sono necessarie nella sezione <modules>.
Aggiungi un attributo di precondizione (preCondition=”bitness64″) per queste due voci del modulo in modo che vengano caricate solo nei pool di applicazioni a 64 bit, come mostrato di seguito:
0 1 |
<add name="DynamicCompressionModule" lockItem="true" preCondition="bitness64" /> <add name="StaticCompressionModule" lockItem="true" preCondition="bitness64" /> |
Dopo aver modificato il file applicationHost.config riavviare l’IIS
Quindi aprire un prompt dei comandi come amministratore e digitare il comando
0 |
IISreset |
Dopo il riavvio dell’IIS l’errore dovrebbe essere risolto.
Sono Raffaele Chiatto, un appassionato di informatica a 360 gradi.
Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare.
Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.
0 Comments