230 votes

Déploiement du site web : 500 - Erreur de serveur interne

J'essaie de déployer une application ASP.NET. J'ai déployé le site sur IIS, mais lorsque je le visite avec le navigateur, je vois ceci :

Erreur de serveur

500 - Erreur de serveur interne.

Il y a un problème avec la ressource que vous recherchez, et elle ne peut pas être affichée.

Après avoir bidouillé le web.config, j'ai obtenu :

La page ne peut être affichée car une erreur de serveur interne s'est produite.

Comment puis-je voir le problème réel derrière cette erreur de serveur ?

2 votes

Assurez-vous que le mappage des caractères génériques est en place pour l'application MVC sur le répertoire...

345voto

Aristos Points 40367

D'abord, vous devez activer et voir les erreurs détaillées de vos messages web, car il s'agit d'un message général sans donner d'informations sur ce qui se passe réellement pour des raisons de sécurité.

Avec l'erreur détaillée, vous pouvez localiser le vrai problème ici.

Aussi, si vous pouvez exécuter le navigateur sur le serveur vous obtenez le détail de l'erreur, car le serveur reconnaît que vous êtes un local et vous le montre. Ou si vous pouvez lire le journal du serveur en utilisant l'observateur d'événements, vous voyez également les détails de votre erreur.

Sur IIS 6

<configuration>
    <system.web>
        <customErrors mode="Off"/>
        <compilation debug="true"/>
    </system.web>
</configuration>

Sur IIS 7

<configuration>
    <system.webServer>
        <httpErrors errorMode="Detailed" />
        <asp scriptErrorSentToBrowser="true"/>
    </system.webServer>
    <system.web>
        <customErrors mode="Off"/>
        <compilation debug="true"/>
    </system.web>
</configuration>

Note : Vous pouvez éviter le paramètre Debug=true . Il suffit de fermer les erreurs personnalisées pendant un certain temps pour obtenir la page d'erreur détaillée.

Référence : Activation de la messagerie d'erreur personnalisée de Windows sur Go Daddy's articles d'aide.

Aussi, ceci peut aider : Comment activer les messages d'erreur détaillés (depuis IIS).

13 votes

Merci pour l'article ! La partie qui a fonctionné pour moi était : <httpErrors errorMode="Detailed" />

1 votes

@codemonkeyliketab Ce doit être la même chose... ou similaire... si vous exécutez iis express sur votre ordinateur ouvrez votre EventViewer...

6 votes

run the browser on the server ça a marché pour moi merci mon frère

26voto

Joshua Frank Points 2200

Je m'arrachais les cheveux sur ce problème. Je m'assurais que l'entrée suivante se trouvait dans la Racine web.config Le fichier l'a réparé pour moi :

<configuration>
  <system.webServer>
    <validation validateIntegratedModeConfiguration="false" />
  </system.webServer>
</configuration>

Rappelez-vous que vous devez l'ajouter à l'existant. XML s'ils sont déjà présents. Vous ne pouvez pas simplement les ajouter à la fin du fichier, car vous ne pouvez pas avoir plusieurs copies d'un même élément.

11voto

Manish kumar Points 81

J'ai finalement résolu cette erreur "500 Internal server" lors du déploiement de l'application ASP.NET MVC 3.0 sur l'hébergement mutualisé godaddy.ocm.

d'une manière ou d'une autre, il y avait des divergences sur la version des fichiers DLL référencés et la version mentionnée dans le fichier web.config .

J'ai essayé toutes les options mentionnées dans divers forums. Rien n'a aidé, bien que tout le monde ait suggéré le même type de solution, mais d'une manière ou d'une autre, cela n'a pas fonctionné dans mon cas. Finalement, après m'être tapé la tête pendant deux jours. J'ai décidé de supprimer toutes les références aux fichiers DLL et de supprimer web.cofig (faire une copie locale) du projet et de laisser l'application lancer l'erreur, puis d'ajouter les fichiers DLL un par un en faisant une copie en local=true.

Après avoir ajouté tous les fichiers DLL, j'ai créé une nouvelle application ASP.NET MVC et j'ai copié le web.config de la nouvelle application dans mon application actuelle. Mon application actuelle a donc maintenant un nouveau web.config, et j'ai ensuite copié la chaîne de connexion et d'autres références de la copie locale du web.config que j'ai sauvegardée.

Je viens de compiler l'application et de la publier dans un dossier local et de FTP le dossier publié à goDaddy.

Cela a fonctionné et mon problème a enfin été résolu.

0 votes

Mon erreur résolue par : stackoverflow.com/questions/11359957/ Il a également fallu installer Elmah

10voto

Van Thi Points 31

Dans mon cas, j'ai fait une erreur dans mon web.config fichier. La clé de l'application a été placée sous la balise <appSettings>. Mais je me demande pourquoi il n'affiche pas d'erreur de configuration. L'erreur 500 est trop générique pour étudier le problème.

0 votes

Je viens d'avoir le même problème. Le fichier web.config a été copié par erreur dans un sous-répertoire et a provoqué des erreurs bien que j'aie réglé l'option "show detailed errors" sur true.

8voto

kenswdev Points 105

Ma première tentative de publication et d'exécution d'un site très simple ne servant que du HTML a donné le résultat suivant : "La page ne peut être affichée car une erreur de serveur interne s'est produite".

Le problème : j'avais configuré le site pour .NET 3.5 dans Visual Studio (clic droit sur le projet de site Web -> Property Pages -> Build), mais le site Web dans Azure était configuré en .NET 4.0. Oups ! Je l'ai changé en 3.5 dans Azure, et ça a marché.

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