83 votes

Server 2012 IIS 8 MVC app affiche la page d'accueil par défaut d'IIS ou des erreurs 403 / 404

Exécution de Microsoft Server 2012 RC à l'aide de l'application gratuite VirtualBox d'Oracle. Utilisation d'un type d'adaptateur Bridged Network dans les paramètres de VirtualBox. Installation de AD et DNS, IIS. Sous les options IIS, Outils de gestion, cliquer sur la case Services de gestion. Cela m'a permis d'utiliser la fonction "Web Deploy" dans Visual Studio 2012 RC. Sur le système d'exploitation invité, j'utilise Windows 7 Ultimate.

J'ai réussi à déployer l'application MVC 4 sur le site Web par défaut d'IIS, mais elle ne s'affichait pas. Au lieu de cela, c'est la page d'accueil par défaut d'IIS qui s'affichait. J'ai désactivé la page d'accueil par défaut et l'actualisation de la page a affiché une page 403. J'ai essayé de taper dans l'une des vues et une page 404 s'est affichée.

31voto

Hillbilly Coder Points 1171

J'ai passé deux jours à essayer de trouver une solution à ce problème, et je l'ai finalement trouvée. Je voulais partager avec la communauté au cas où cela aiderait quelqu'un d'autre.

Tous les articles et les messages de forum que j'ai rencontrés sur Internet ont commencé à se refléter les uns les autres d'une manière ou d'une autre.

L'une des solutions consiste à s'assurer que la configuration du pool d'applications est correcte, en utilisant le framework 4.0 et en l'intégrant. [x] Confirmation de la configuration correcte.

Une autre solution étendue consiste à utiliser "aspnet_regiis -i" ou "aspnet_regiis -ir" qui ne fonctionne pas sur Microsoft Server 2012.

Une autre solution consiste à ajouter ce qui suit au fichier web.config :

<system.webServer>
  <modules runAllManagedModulesForAllRequests="true" />
</system.webServer>

Cependant, IIS 8 répond à cette question en indiquant que ces paramètres sont verrouillés à partir d'un niveau de configuration supérieur et ne peuvent pas être utilisés au niveau de l'application. Bon, d'accord.

J'ai fini par trouver un article qui m'a conduit à la page suivante : http://learn.iis.net/page.aspx/1097/iis-80-using-aspnet-35-and-aspnet-45

La solution consistait à retourner au tableau de bord de Microsoft Server 2012 et à sélectionner la fonction "Ajouter des rôles". Descendez jusqu'à la racine "Web Server (IIS)", développez "Web Server", développez "Application Development" et sélectionnez "ASP.NET 3.5" et "ASP.NET 4.5" et "Install".

Ce qui m'a déconcerté au départ, c'est que je n'ai pas développé "Développement d'applications", mais que j'ai sélectionné IIS et que j'ai continué. À l'étape suivante, "Fonctionnalités", ".NET Framework 4.5 Features" était sélectionné par défaut. J'ai donc sélectionné ".NET Framework 3.5 Features" et j'ai pensé que tout irait bien.

Après avoir installé les sélections sous "Développement d'applications", les applications MVC 4.5 fonctionnent comme elles ont été conçues. J'espère que cela aidera ceux qui, comme moi, sont restés bloqués.

0voto

Clevelus Points 91

J'ai sélectionné " .NET Framework 3.5 Features " et j'ai pensé que tout irait bien ! !! Aucune autre action n'a aidé. Lorsque ce problème est apparu "soudainement". Pendant un certain temps, tout a fonctionné. Mais après la publication suivante, l'application a fonctionné pendant quelques minutes, puis s'est retrouvée dans l'erreur 403.14.

0voto

Basit Jamil Points 1

Tout ce dont vous avez besoin, c'est de changer le mode de débogage de la compilation à true dans la configuration web et de garder les autres propriétés identiques. Ouvrez votre dossier de publication et ouvrez le fichier Web Config.

<configuration> <compilation debug="true"> </compilation> </configuration>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X