IIS4 404 personalizzato non visualizzato

creato un nuovo sito Web IIS7 con il pool di app .net 4.0 Intergrated.

URL che terminano con .aspx mostrano 404 personalizzati qualcos’altro dà la pagina di errore del server blu “Errore HTTP 404.0 – Non trovato La risorsa che stai cercando è stata rimossa, ha cambiato nome o è temporaneamente non disponibile.” (quindi niente a che fare con IE)

        

anche provato

  

ma ciò ha portato solo a una risposta vuota.

Ho trovato solo un riferimento all’utilità di eseguire l’appcmd per testare la gestione degli errori http personalizzata, ma qui ci sono i risultati.

 C:\Windows\System32\inetsrv>appcmd list config "http://mysite/file.notexist" -section:httpErrors              

il che è strano perché nel gestore di iis7 compaiono le pagine di errore

 404 /pages/404.aspx Execute URL Local 

Pagine di errore .Net non mostra nulla, anche se ho avuto una voce in là.

Domanda 1: quali passi devo fare per un sito asp .net 4 iis7 completamente nuovo per avere una pagina di errore .net personalizzata per ogni risultato 404?

Domanda 2: perché il gestore .net funziona per i file .aspx e nient’altro?

nota: impostare il 404 a livello di server e il comando appcmd mostrava il 404 personalizzato nel percorso, ma non faceva alcuna differenza sul fatto che il sito non mostrava 404.

Quindi immagino che sia un’aringa rossa.

la risposta era da usare

      

e non avere alcun sistema.web CustomErrors

questo ha funzionato per entrambe le richieste .aspx e non .aspx.

Stranamente questa combinazione non è arrivata in nessuno dei post del blog e delle risposte StackOverflow che avevo indagato, era solo fortuna che l’ho provato.

  

ha funzionato per me in IIS 7 (Windows Server 2008 R2).

Il mio problema era che avevo questo nel mio web.config, ma in un . Spostandolo nella root risolto.

   ...  ...    

Per IIS7 in poi, vai solo con httpErrors, come da risposta di rob: https://stackoverflow.com/a/6661699

Solo per aggiungere, a meno che non sia necessario / vuoi utilizzare ASP.NET per visualizzare la tua pagina di errore, ti consiglio di utilizzare file HTML statici per rimuovere la dipendenza da ASP.NET. Assicurati di omettere qualsiasi barra in avanti e usa i backslash per il resto del percorso, ad es

  

Impostare responseMode="File" per mantenere il codice di stato corretto.

Stavo riscontrando questo problema con la mia app Web e l’ho risolto risolvendo la linea di reindirizzamento:

      

Su IIS, allowAbsolutePathsWhenDelegated (su Configuration Editor -> system.webServer / httpErrors) era bloccato e non posso modificare il valore false su true.