268 votes

CustomErrors mode="Off"

Je reçois une erreur chaque fois que je télécharge ma webapp vers le fournisseur. À cause du mode customErrors, tout ce que je vois est le message par défaut "Runtime error", m'indiquant de désactiver customErrors pour en savoir plus sur l'erreur.

Exaspéré, j'ai configuré mon web.config pour qu'il ressemble à ceci :

<?xml version="1.0"?>
<configuration>
    <system.web>
        <customErrors mode="Off"/>
    </system.web>
</configuration>

Et pourtant, tout ce que j'obtiens, c'est cette stupide page d'erreurs à distance qui ne contient aucune information utile. Que puis-je faire d'autre pour désactiver customErrors ? !

1 votes

Essayez d'ajouter @Model.Exception.Message à la Shared/Error.cshtml

0 votes

En général, il faut faire attention aux transformations de la configuration (par exemple Web.Debug.config qui pourrait changer cette valeur), et faire attention aux définitions doubles de cette section/propriété dans le fichier (ce qui n'était clairement pas le cas ici).

1voto

Frederik Vig Points 280

Avez-vous un caractère spécial comme æøå dans votre web.config ? Si c'est le cas, assurez-vous que l'encodage est défini sur utf-8.

1voto

Greg Hurlman Points 10944

Cette application Web est-elle placée en dessous de toute autre application dans l'arborescence du site Web ? Vérifiez les fichiers web.config parents pour d'autres paramètres, le cas échéant. Vérifiez également que votre répertoire est défini comme un répertoire d'application dans IIS.

1voto

Will Points 76760

Si vous utilisez l'aperçu MVC 4, vous pouvez rencontrer ce problème car vous utilisez l'attribut HandleErrorAttribute. Le comportement a changé en 5, de sorte que les exceptions ne sont pas traitées si vous désactivez les erreurs personnalisées.

1voto

Neil Barnwell Points 20731

Vous pouvez également essayer de faire apparaître le site Web dans un navigateur sur la machine serveur. Je ne développe pas beaucoup en ASP.NET, mais je me souviens que la fonction d'erreurs personnalisées comporte un paramètre permettant d'afficher uniquement le texte complet des erreurs sur le serveur, par mesure de sécurité.

1voto

Roman Points 673

Je viens de faire face à un problème similaire. Dans mon cas, la version par défaut du site asp.net était 1.1 alors que j'essayais de démarrer une application web 2.0. L'erreur était plutôt triviale, mais je n'ai pas compris immédiatement pourquoi les erreurs personnalisées ne disparaissaient pas, et le runtime n'a jamais écrit dans le journal des événements. La solution évidente était de faire correspondre la version dans l'onglet Asp.Net de IIS.

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