4 votes

Désactivation de la réponse d'erreur du serveur IIS 7.5 pour les codes d'état HTTP 5xx et 4xx

Existe-t-il un moyen d'empêcher IIS de remplacer automatiquement la sortie d'une application web qui renvoie un code d'état de l'ordre de 500 ou 400 ?

À titre d'exemple, je peux créer la page suivante dans ColdFusion :

<cfheader statuscode="500" statustext="Error">
Sorry, an error occurred.

Le comportement devrait être le suivant : je vois une page qui dit "Désolé, une erreur s'est produite" et je vois dans les en-têtes que le code d'état est 500.

Au lieu de cela, je vois :

Server Error
500 - Internal server error.
There is a problem with the resource you are looking for, and it cannot be displayed.

Dans un beau style IIS.

J'ai essayé de supprimer la page d'état personnalisée 500, mais cela n'a donné qu'un résultat :

The page cannot be displayed because an internal server error has occurred.

Sans aucun des jolis éléments de style.

Il semble que cela se produise avec toutes les pages qui renvoient un code qui n'est pas dans la fourchette 200 ou 300.

7voto

user54481 Points 1

La réponse à cette question a été donnée dans une autre question : IIS7 détourne ma page d'erreur Coldfusion

Il semble que la solution consiste à modifier la configuration pour qu'IIS ignore l'erreur et la laisse passer, d'où la configuration suivante

    <httpErrors existingResponse="PassThrough" />

La solution consiste donc à modifier le comportement d'IIS, ce qui est une chance, car il serait vraiment stupide d'exiger de tous les serveurs d'applications web existants qu'ils modifient leur comportement.

Mise à jour

Voir ma réponse actualisée à une autre question similaire pour savoir pourquoi et comment il n'y a pas de réponse viable à ce problème .

2voto

uSlackr Points 6447

Il existe apparemment un moyen de le faire en utilisant Response.TrySkipIisCustomErrors. L'exemple ci-dessous provient d'une page aspx mais devrait être adaptable à votre cas d'utilisation.

Le contenu du site suivant est trop vaste pour être reproduit ici.

http://www.west-wind.com/weblog/posts/2009/Apr/29/IIS-7-Error-Pages-taking-over-500-Errors

0voto

Gene Mitelman Points 11

Voici ce qui fonctionne à coup sûr : 1. Ouvrir les pages d'erreur du site web ou de l'application 2. Cliquez sur Edit Feature Settings dans les actions à droite. 3. Sélectionnez Erreurs détaillées et enregistrez.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X