web-dev-qa-db-fra.com

Erreur de déploiement Web sur IIS - pool d'applications managedRuntimeVersion

Lorsque je tente de déployer un package de déploiement d'application ASP.NET sur IIS, un message d'erreur s'affiche. 

(Le pool d'applications que vous essayez d'utiliser a la propriété 'managedRuntimeVersion' définie sur 'v2.0'. Cette application nécessite 'v4.0'.

J'ai pris ces mesures:

  • assuré que la version .NET Framework par défaut de mon serveur est 4 (redémarrage du service IIS sur la machine)
  • assuré que mon application Web est configurée pour .NET 4
  • assuré que le fichier web.config de l'application ne comporte aucune référence à l'obligation de .NET 2 ou 3.5

Quelle est la cause première de cette erreur et comment peut-on la résoudre?

enter image description here

enter image description here

28
John

Web Deploy utilise les paramètres de site Web IIS par défaut lors de la publication. Pour changer/confirmer ceci sur votre machine IIS:

  • allez dans IIS-> Site Web par défaut-> Paramètres de base-> Pool d'applications 
  • sélectionnez ASP.NET v4.0 ou le pool d'applications approprié à l'aide de la version Framework appropriée

Si vous essayez d'importer cette application dans un site existant , assurez-vous que son pool d'applications a la même version. J'essayais la même chose, mais je ne savais pas que mon «nouveau» site Web était exécuté sur un pool d'applications v2.

Assurez-vous que vos pools d'applications par défaut sont également configurés pour la version 4.0.

enter image description here

enter image description here

34
Andrey Morozov

ASP.NET 4 est installé en même temps que Visual Studio. Toutefois, le processus d'installation n'enregistre pas automatiquement ASP.NET 4 avec IIS et les sites Web existants IIS ne sont pas automatiquement attribués aux pools d'applications .NET 4.

Pour résoudre ce problème, enregistrez ASP.NET auprès de IIS et définissez le pool d'applications du site Web de destination IIS sur la version .NET Framework requise par le package.

Pour ce faire, ouvrez Command Prompt en tant qu'administrateur, accédez à C:\Windows\Microsoft.NET\Framework64\v4.0.30319 et tapez: aspnet_regiis -i

Selon Web Deployment FAQ pour Visual Studio et ASP.NET

7
SeyedPooya Soofbaf

J'essayais d'utiliser Déploiement continu dans VSTS/TFS, dans ma Définition de sortie (valeur par défaut), j'avais une IIS Web App Manage Task (nommée Manage IISWebApplication), où il avait nom du site Web parent paramètre avec le nom de site Web correct, et le paramètre Chemin virtuel était également correct.

Je viens de corriger le nom du site Web dans la section Processus de déploiement , où se trouvent également le nom de l'environnement et le nom du site Web.

Silly, mais cela m'a pris 2 jours pour remarquer que le nom du site Web était à deux endroits dans la définition de version.

0
Alisson