Distriggerszione della risposta agli errori del server IIS 7.5 per i codici di stato HTTP 5xx e 4xx

C'è un modo per impedire che IIS superi automaticamente l'output di un'app web che restituisce un codice di stato nel range 500 o 400?

Proprio come esempio, in ColdFusion posso creare la seguente pagina:

  • SBS 2011: Imansible aprire Sharepoint Designer basato su Web
  • La richiesta di richiesta di IIS cambia 206 contenuti parziali a 200
  • Il sottodominio di riscrivere IIS 7 per indicare una port specifica
  • Come si inizia / arresta il pool di applicazioni di IIS 7 dalla row cmd se ci sono spazi nel nome della pool di app?
  • Windows Server 2008 R2 - Come posso modificare le impostazioni di IIS?
  • Web Hosting -> Server -> Tutto caduto nel mio giro .. AIUTO!
  • <cfheader statuscode="500" statustext="Error"> Sorry, an error occurred. 

    Il comportmento dovrebbe essere che vedo una pagina che dice "Mi dispiace, si è verificato un errore". e vedere nelle intestazioni che il codice di stato è 500.

    Invece, vedo:

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

    Nel bel design dello IIS.

    Ho provato a cancellare la pagina di stato personalizzato 500 ma che ha semplicemente provocato:

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

    Senza nessuno degli stili piacevoli.

    Sembra che succeda con qualsiasi pagina che restituisca un codice che non sia nella gamma 200 o 300.

  • nginx: la direttiva error_page viene ignorata in silenzio
  • Qual è la differenza tra le "pagine di errore NET" e le "pagine di errore" in IIS7?
  • Apache: come impostare la pagina di errore personalizzata 401 e salvare il comportmento originale
  • Errore di configuration IIS7 e errori remoti
  • nginx non servirà una pagina di errore in una sottodirectory della radice del documento
  • Apache: richiesta insicura inviata per proteggere la port ... desidera redirect
  • 3 Solutions collect form web for “Distriggerszione della risposta agli errori del server IIS 7.5 per i codici di stato HTTP 5xx e 4xx”

    A questo è stato risposto in un'altra domanda: IIS7 sbarca il mio errore di ColdFusion Error

    Sembra che la soluzione cambia la configuration in modo che IIS ignori l'errore e lo consente di passare, quindi l'impostazione

      <httpErrors existingResponse="PassThrough" /> 

    Quindi la soluzione è cambiare il comportmento di IIS, che è fortunato, perché richiedere a tutti i server di applicazioni web esistenti di cambiare il loro comportmento sarebbe davvero stupido.

    Aggiornare

    Vedere la mia risposta aggiornata in un'altra domanda simile per scoprire perché e come non esiste una risposta affidabile a questo problema .

    C'è apparentemente un modo per farlo utilizzando Response.TrySkipIisCustomErrors. L'esempio riportto di seguito è da una pagina aspx, ma dovrebbe essere adattabile al tuo caso d'uso.

    Questo seguente contenuto web è troppo ampio per duplicare qui.

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

    Ecco cosa funziona sicuramente: 1. Aprire le pagine di errore per il sito web o l'applicazione 2. Fare clic su Modifica impostazioni delle funzioni nelle azioni a destra 3. Selezionare gli errori dettagliati e salvare

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.