web-dev-qa-db-fra.com

Erreur de configuration liée à targetFramework dans web.config

J'ai créé un site Web MVC dans Visual Studio 2015 et cela fonctionne dans mon localhost. Mais lorsque j'ai publié mon site Web et mis dans mon hôte, cela ne fonctionne pas. Cela me donne cet avis d'erreur:

Erreur serveur dans l'application '/'.

Erreur de configuration 

Message d'erreur de l'analyseur: L'attribut 'targetFramework' dans le fichier L'élément du fichier Web.config est utilisé uniquement pour cibler version 4.0 et ultérieure du .NET Framework (par exemple, ''). Le 'targetFramework' L'attribut fait actuellement référence à une version postérieure au version installée du .NET Framework. Spécifiez une cible valide version du .NET Framework, ou installez la version requise du .NET Framework.

Erreur de source: 

Une erreur d'application s'est produite sur le serveur. L'erreur personnalisée actuelle les paramètres de cette application empêchent les détails de l'application erreur d'être vu à distance (pour des raisons de sécurité). Ça pourrait, cependant, être visionné par les navigateurs fonctionnant sur le serveur local.

Fichier source: G:\xxx\xxx.com\httpdocs\web.config Ligne: 24 

Informations de version: Microsoft .NET Framework Version: 4.0.30319; Version ASP.NET: 4.0.30319.34248

Parties liées dans mon web.config:

  <configSections>
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  <!-- For more information on Entity Framework configuration, visit http://go.Microsoft.com/fwlink/?LinkID=237468 --></configSections>

Et cette partie avec erreur:

  <system.web>
    <authentication mode="None" />
    <customErrors mode="Off" />
    <compilation debug="true" targetFramework="4.6" />
    <httpRuntime targetFramework="4.6" />
  </system.web>

Propriétés de mon site web:

 enter image description here

Et NuGet Package Manager:

 enter image description here

Propriétés de référence EntityFramework:

 enter image description here

Paramètres de base du site Web par défaut: (pour être honnête, je ne suis pas sûr de devoir ajouter un nouveau site Web (mon site Web) ici.)

 enter image description here

Mes frameworks .net installés:

 enter image description here

Ma méthode de publication:

 enter image description here

J'ai enquêté sur ce problème sur Internet et j'ai trouvé plusieurs liens en rapport avec mon problème: Problème du framework Asp.net MCV4 . Dans ce lien, il y a deux offres principales: 

  1. changer cette balise de compilation

  2. mise à jour du pool d'applications dans IIS

En fait, j'ai essayé de changer cette étiquette mais ça ne change pas. Ensuite, j'ai contrôlé mon pool d'applications, mais il semble être à jour.

 enter image description here

J'ai appelé mon fournisseur d'accueil et j'ai expliqué mon problème. Ils disent que cette erreur n'est pas liée à leurs serveurs.

Que devrais-je faire? Quelle est la solution pour cela?

29
rockenpeace

Votre projet de site Web vise la v4.6 du .Net Framework, mais votre fournisseur d’hébergement n’a pas encore installé cette version. Vos options:

  1. Demandez au fournisseur de l'installer - il est peu probable qu'il le fasse.
  2. Trouvez un autre fournisseur qui le prend en charge.
  3. Changez votre projet pour cibler la v4.5.
38
DavidG

@DavidG a justement souligné toutes les choses. Juste du côté informationnel si IIS est votre fournisseur, Web Platform Installer est votre meilleur choix pour vérifier l’état actuel de tout ce qui est installé sur votre ordinateur. Jetez un coup d'œil à l'instantané ci-dessous -

 enter image description here

Il est très pratique de vérifier tout ce qui manque et vous pouvez lancer l'installation de toutes les pièces manquantes en un clic.

7
RBT

Je viens d'avoir un problème similaire après l'installation (mise à jour Windows) de la base de connaissances 3205402. 

Grande différence avec mon cas: l'application fonctionnait bien avant la mise à jour!

==> J'ai découvert dans "Gestionnaire IIS", "Restrictions ISAPI et CGI", que le framework ASP.NET v4.0.30319 avait été remplacé par "non autorisé"!

Le passage à "Autorisé" a résolu mon problème

2
Didier68

J'ai tourné autour avec cela aujourd'hui sans résolution. Exaspéré, je viens finalement de supprimer ma copie de travail de mon lecteur et de le revérifier auprès de SVN. 

Fixé.

Pas une réponse particulièrement intelligente, mais cela a réglé le problème pour moi, je ne savais pas quel était le problème.

0
delliottg