Problème avec defaultRedirect dans Web.Config

J’utilise Asp.net 4.

Ici réglage pour mon fichier Web.Config.

   

Je dois appliquer l’ URL defaultRedirect pour toute exception et utiliser le redirectMode="ResponseRewrite" uniquement pour la page non trouvée 404 .

Avec ce paramètre pour le moment, je peux gérer correctement la page non trouvée (je peux obtenir la page 404.aspx), mais si une exception se produit sur une autre page, le message "Internet Explorer cannot display the webpage" et je ” m pas en mesure d’atteindre le defaultRedirect Oops.aspx .

Qu’est-ce que je fais ici mal? Merci

Le fait d’avoir une page aspx comme cible d’une redirection d’erreurs personnalisée pose un problème: des erreurs qui ne sont pas spécifiques à une page (par exemple, erreurs dans global.asax; erreurs lors du traitement de web.config) seront également émises par la page cible, qui peut entraîner une boucle de redirection infinie.

Pour cette raison, il est souvent préférable d’avoir une page HTML statique comme cible d’au moins la valeur defaultRedirect.

Essayez de mettre le ~ dans l’URL de redirection.

redirect = “~ / ErrorPages / 404.aspx”

Combien d’octets le contenu de la page d’erreur contient-il et définit-il un code d’état HTTP autre que 200 OK? Dans Internet Explorer avec l’option “Afficher les messages d’erreur HTTP conviviaux”, valeur par défaut, les pages d’erreur personnalisées dont le contenu a une longueur inférieure à 512 octets seront supprimées par le navigateur IE et remplacées par le message d’erreur “convivial”.

Pour voir si cela est votre problème, vous pouvez essayer de désactiver l’option “Afficher les messages d’erreur HTTP simplifiés” sous Outils, Options Internet, Options avancées, Paramètres. Ce sera sous la catégorie Navigation dans la zone Paramètres.

Si l’option est désactivée, essayez de la réactiver et de modifier votre page pour append une image ou un autre élément dont la taille dépassera 512 octets.