J'essaie d'exécuter une application Web ASP.NET MVC 2 sous IIS sous Windows 7, mais j'obtiens une erreur 403.14. Voici les étapes à suivre pour reproduire:
http://localhost:{random_port}/
et la page sera rendue correctement.http://localhost/MvcApplication1/
et une erreur IIS HTTP Error 403.14 - Forbidden The Web server is configured to not list the contents of this directory.
.Il est clair que, pour une raison quelconque, le routage ASP.NET ne fonctionne pas correctement.
Choses auxquelles j'ai déjà pensé et essayé:
aspnet_regiis -i
dans le répertoire v4.0.30319
.Voici la partie la plus étonnante - c'est sur une machine qui vient d'être construite. Nouvelle copie de Windows 7 x 64 Ultimate, nouvelle installation de Visual Studio 2010 Premium, aucun autre site Web ni autre travail effectué.
Quelque chose d'autre que je peux essayer?
Ok, cela est résolu pour moi, en procédant comme suit:
Lancer aspnet_regiis -i
dans le 32-bit directory c:\Windows\Microsoft.NET\Framework\v4.0.30319
.
À ce stade, je ne comprends pas pourquoi le mode 64 bits ne fonctionne pas, mais je suis maintenant débloqué. J'espère que cela aidera tous ceux qui ont ce problème.
J'ai eu exactement le même problème, alors merci pour votre aide.
Cependant ... avez-vous essayé d'exécuter la commande aspnet_regiis -i
dans l'invite de commande Visual Studio 64 bits (avec les privilèges d'administrateur)? Quand j'ai fait cela, cela a été corrigé pour le mode 64 bits.
Pour clarifier, j'ai cliqué avec le bouton droit sur Visual Studio x64 Win64 Command Prompt (2010)
et choisi Exécuter en tant qu'administrateur. Puis je suis allé ici:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319
Et a fait ceci: aspnet_regiis -i
Et maintenant cela fonctionne parfaitement.
Assurez-vous également que le fichier de configuration comporte la ligne suivante, sinon le routage ne fonctionnera pas.
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
Une autre chose à noter, assurez-vous que votre pool d'applications est défini sur intégré
N'utilisez pas runAllManagedModulesForAllRequests. Vous souhaitez laisser IIS gérer des ressources telles que des images.
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
Ajoutez plutôt le module de routage MVC
<system.webServer>
<modules>
<remove name="UrlRoutingModule-4.0" />
<add name="UrlRoutingModule-4.0" type="System.Web.Routing.UrlRoutingModule" preCondition="" />
</modules>
</system.webServer>
J'ai eu ce même problème sur IIS8/Windows Server 2012. Aucune des nombreuses solutions proposées ne fonctionnait jusqu'à ce que j'essaye ce qui suit.
dism /online /enable-feature /featurename:IIS-ASPNET45 /All
Sans le commutateur '/ All', il s'est plaint du fait qu'une fonctionnalité parent n'était pas installée.
La chose étrange est que, selon Windows/ Activer ou désactiver les fonctionnalités Windows facility, asp.net 4.5 était déjà installé.
Il n'était pas nécessaire de modifier le fichier web.config, d'ajouter ou de supprimer des modules.
J'ai toujours utilisé le paramètre de serveur personnalisé dans VS 2008, qui me permet toujours de déboguer sans problèmes. Pas sûr que cela fonctionne différemment en 2010
J'ai eu ces symptômes; Mon Global.asax
se bloquait. Correction du crash, tout fonctionne maintenant.