ASP.NET MVC en IIS 7.5 - Error 403.14 prohibido
Estoy ejecutando Windows 7 Ultimate (64 bits) con Visual Studio 2010 RC. Recientemente decidí que VS ejecute/depure mis aplicaciones en IIS en lugar del servidor de desarrollo que viene con él.
Sin embargo, cada vez que intento ejecutar una aplicación MVC, aparece el siguiente error:
Error HTTP 403.14: Prohibido El servidor web está configurado para no enumerar el contenido de este directorio. Detallado
Información de errores
Módulo DirectorioListadoMódulo
Notificación EjecutarRequestHandler
Error de archivo estático del controlador
Código 0x00000000 solicitado
URL http://localhost:80/miSitio/
Ruta física C:\myProject\mySite\
Método de inicio de sesión Inicio de sesión anónimo
Usuario anónimo
Coloqué un default.aspx
archivo en el directorio y recibí el siguiente error:
Error HTTP 500.21: el controlador de errores interno del servidor "PageHandlerFactory-Integrated" tiene un módulo defectuoso "ManagedPipelineHandler" en su lista de módulos
¿Hay otros pasos que olvidé seguir para que esto funcione?
Notas: Instalé IIS 7.5 después de instalar VS 2010 RC. Utilicé el botón integrado "Crear directorio virtual" en la pestaña "Web" en las "Propiedades" del proyecto MVC en Visual Studio 2010. Me aseguré de que la aplicación esté usando el grupo de aplicaciones ASP.NET 4.
A continuación se muestran las funciones instaladas de IIS que tengo.
ASP.NET 4 no estaba registrado en IIS. Tuve que ejecutar el siguiente comando en la línea de comando/ejecutar
Windows de 32 bits (x86)
%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir
Windows de 64 bits (x64)
%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
Nota del comentario de David Murdoch:
Que la versión .net ha cambiado desde que se publicó esta respuesta. Verifique qué versión del marco está en el directorio %windir%\Microsoft.NET\Framework64 y cambie el comando en consecuencia antes de ejecutarlo (actualmente es v4.0.30319)
Una cosa más que debe asegurarse de tener es la siguiente configuración en su web.config:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>