Cómo solucionarlo: el controlador "PageHandlerFactory-Integrated" tiene un módulo defectuoso "ManagedPipelineHandler" en su lista de módulos
Estoy configurando un proyecto MVC 3 para que funcione en una instalación local de IIS y encontré el siguiente error 500:
El controlador "PageHandlerFactory-Integrated" tiene un módulo defectuoso "ManagedPipelineHandler" en su lista de módulos.
Resulta que esto se debe a que ASP.Net no se instaló completamente con IIS a pesar de que marqué esa casilla en el cuadro de diálogo "Agregar función". Para solucionar este problema, simplemente ejecuté el siguiente comando en el símbolo del sistema
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Si hubiera estado en un sistema de 32 bits, se habría visto así:
%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i
Mi pregunta es, ¿hay alguna manera de instalar IIS en un equipo con Windows 7 para usar .NET 4.0 (MVC 3) sin realizar este paso adicional?
Resulta que esto se debe a que ASP.Net no se instaló completamente con IIS a pesar de que marqué esa casilla en el cuadro de diálogo "Agregar función". Para solucionar este problema, simplemente ejecuté el siguiente comando en el símbolo del sistema
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Si hubiera estado en un sistema de 32 bits, se habría visto así:
%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i
Recuerde ejecutar el símbolo del sistema como administrador ( CTRL+ SHIFT+ ENTER)
La respuesta aceptada es correcta, sin embargo, a veces aparece el mensaje de error " Aspnet_regiis.exe no se reconoce como un comando interno o externo, programa ejecutable o archivo por lotes ".
Para solucionarlo prueba lo siguiente:
Asegúrese de que su instalación de .NET 4.0 no esté dañada (ejecute el instalador y "Repárelo"). También existe la posibilidad de que no esté instalado en absoluto en su máquina.
Si está seguro de que no tiene instalado .NET 4.0 y desea ejecutarlo como .NET 2.0, intente esto :
Si ve el mensaje "Aspnet_regiis.exe no se reconoce como un comando interno o externo, programa ejecutable o archivo por lotes", cambie a C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Aspnet_regiis.exe -i en el símbolo del sistema.
Error: el controlador "PageHandlerFactory-Integrated" tiene un módulo defectuoso "ManagedPipelineHandler" en su lista de módulos
Encontré los artículos para solucionar este problema simplemente ejecutando los siguientes comandos en el símbolo del sistema:
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
Si el sistema fuera de 32 bits, quedaría así:
%windir%\Microsoft.NET\Framework\v4.0.21006\aspnet_regiis.exe -i
Pero, cuando intenté ejecutar estos comandos usando un símbolo del sistema, recibí el siguiente mensaje de error/advertencia:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis.exe -i Microsoft (R) ASP.NET RegIIS versión 4.0.30319.33440 Utilidad de administración para instalar y desinstalar ASP.NET en la máquina local. Copyright (C) Microsoft Corporation. Reservados todos los derechos. Comience a instalar ASP.NET (4.0.30319.33440). Esta opción no es compatible con esta versión del sistema operativo. En su lugar, los administradores deberían instalar/desinstalar ASP.NET 4.5 con IIS8 mediante el cuadro de diálogo "Activar/desactivar funciones de Windows", la herramienta de administración del Administrador del servidor o la herramienta de línea de comandos dism.exe. Para obtener más detalles, consulte http://go.microsoft.com/fwlin k/?LinkID=216771. Terminé de instalar ASP.NET (4.0.30319.33440).**
Para solucionar este problema en Windows 8.1, sugeriría hacer lo siguiente.
Solución:
Ir a: Activar o desactivar las funciones de Windows -> Servicios de información de Internet -> Servicios World Wide Web -> Funciones de desarrollo de aplicaciones -> Habilitar ASP.NET 4.5
Esto debería resolver el problema.
Para resolver el problema, intente repair the .net framework 4
y luego ejecute el comando
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i