Condividi tramite


Classe HttpErrorsSection

Configura la gestione degli errori HTTP per un server Web.

Sintassi

class HttpErrorsSection : ConfigurationSectionWithCollection  

Metodi

Nella tabella seguente sono elencati i metodi esposti dalla HttpErrorsSection classe .

Nome Descrizione
Aggiungere Ereditato da ConfigurationSectionWithCollection.
Cancella Ereditato da ConfigurationSectionWithCollection.
Recupero Ereditato da ConfigurationSectionWithCollection.
GetAllowDefinition Ereditato da ConfigurationSection.
GetAllowLocation Ereditato da ConfigurationSection.
Rimuovi Ereditato da ConfigurationSectionWithCollection.
RevertToParent Ereditato da ConfigurationSection.
SetAllowDefinition Ereditato da ConfigurationSection.
SetAllowLocation Ereditato da ConfigurationSection.

Proprietà

Nella tabella seguente sono elencate le proprietà esposte dalla HttpErrorsSection classe .

Nome Descrizione
DefaultPath Valore facoltativo string che contiene il percorso predefinito di un file di errore HTTP o un URL. Quando non viene superato, questo valore viene ereditato dalla Path proprietà degli oggetti HttpErrorElement appena creati.
DefaultResponseMode Valore facoltativo sint32 che configura la risposta predefinita agli errori HTTP. Quando non viene superato, questo valore viene ereditato dalla ResponseMode proprietà degli oggetti appena creati HttpErrorElement . I valori possibili sono elencati più avanti nella sezione Osservazioni.
DetailedMoreInformationLink Valore facoltativo di lettura/scrittura string che specifica l'URL di un collegamento, visualizzato nella parte inferiore della pagina, in una pagina con informazioni più dettagliate sull'errore generato. L'oggetto status, substatus, hresulte messageid dell'errore vengono inviati come parte della stringa di query. È possibile utilizzare questa proprietà per indirizzare gli utenti finali a un percorso personalizzato per informazioni sugli errori. Il valore predefinito è https://go.microsoft.com/fwlink/?LinkID=62293.
ErrorMode Enumerazione di lettura/scrittura sint32 che specifica se la funzionalità di errore dettagliata è abilitata, disabilitata o visualizzata solo ai client locali. I valori possibili sono elencati più avanti nella sezione Osservazioni.
ExistingResponse Enumerazione di lettura/scrittura sint32 che specifica come IIS gestisce gli errori personalizzati esistenti. I valori possibili sono elencati più avanti nella sezione Osservazioni.
HttpErrors Matrice di HttpErrorElement valori che configura la gestione per errori HTTP specifici.
Location Ereditato da ConfigurationSection. Proprietà chiave.
Path Ereditato da ConfigurationSection. Proprietà chiave.
SectionInformation Ereditato da ConfigurationSection.

Sottoclassi

Questa classe non contiene sottoclassi.

Commenti

Questa classe espone le impostazioni nella <httpErrors> sezione di un file di configurazione.

Gli errori personalizzati rappresentati dalla HttpErrorsSection classe sono correlati a IIS 7 e si trovano nello spazio dei nomi System.WebServer.Configuration. Ognuno di questi errori è rappresentato da un'istanza della classe HttpErrorElement .

Gli errori personalizzati rappresentati dalla classe CustomErrorsSection sono specifici per ASP.NET e si trovano nello spazio dei nomi System.Web. Ognuno di questi errori è rappresentato da un'istanza della classe CustomError .

Nella tabella seguente sono elencati i valori possibili per la DefaultResponseMode proprietà . Il valore predefinito è 0 (File).

Valore Parola chiave Descrizione
0 File Il server Web restituisce la pagina Web dal file statico specificato nella Path proprietà della HttpErrorElement classe . Nota: Gli errori personalizzati sono specifici della lingua e in genere restituiscono l'errore personalizzato nella lingua del client. Ciò richiede l'installazione del Language Pack del client. Il percorso del file viene costruito come segue: PrefixLanguageFilePath\ClientLanguageID\ErrorCodeFile Ad esempio, se PrefixLanguageFilePath è "d:\inetpub\custerr", il browser client invia "en-us" nell'intestazione Accept-Language e il codice di errore è 404, il percorso risultante quando viene installato il Language Pack en-US è d:\inetpub\custerr\en-us\404.htm. Se ja-JP è la lingua di sistema e il Language Pack en-US non è installato, il percorso risultante viene d:\inetpub\custerr\ja-jp\404.htm.
1 ExecuteURL Il server Web restituisce la pagina ASP interna specificata nella Path proprietà della HttpErrorElement classe . L'URL deve trovarsi nell'ambito dello stesso pool di applicazioni. Nota: In IIS 7 il reindirizzamento crea un URL con il formato seguente (gli elementi tra parentesi quadre sono facoltativi): /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode>
2 Redirect Il server Web fornisce una HTTP 302 Found risposta e include l'URL specificato nella Path proprietà della HttpErrorElement classe nel Location campo della risposta. Se la risposta è un GET metodo anziché un HEAD metodo, deve includere anche un'entità con un collegamento ipertestuale breve al nuovo URL. Nota: In IIS 7 il reindirizzamento crea un URL con il formato seguente (gli elementi tra parentesi quadre sono facoltativi): /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode>

Nella tabella seguente sono elencati i valori possibili per la ErrorMode proprietà . Il valore predefinito è 0 (DetailedLocalOnly).

Valore Parola chiave Descrizione
0 DetailedLocalOnly Viene generata una risposta di errore dettagliata solo se la richiesta proviene dal computer locale. Se la richiesta proviene da un indirizzo esterno, il server genera una risposta di errore personalizzata. Nota: Il valore della ExistingResponse proprietà determina se viene generato un errore dettagliato o personalizzato.
1 Custom L'errore generato dal modulo o dal server viene sostituito da una pagina personalizzata specificata. Questa modalità è utile per fornire messaggi di errore più descrittivi agli utenti finali. Nota: Questa impostazione disattiva gli errori dettagliati, anche per le richieste locali.
2 Detailed Viene visualizzata una pagina con informazioni dettagliate sull'errore dell'applicazione e non vengono visualizzati errori personalizzati. Questa modalità è utile per il test e il debug di siti Web e applicazioni. Nota: Si tratta di un rischio di sicurezza da impostare su ErrorModeDetailed, perché anche i client remoti riceveranno informazioni dettagliate sugli errori che potrebbero causare la divulgazione di informazioni indesiderate.

Nella tabella seguente sono elencati i valori possibili per la ExistingResponse proprietà . Il valore predefinito è 0 (Auto).

Valore Parola chiave Descrizione
0 Auto La risposta dipende dalla prima corrispondenza riuscita del set di condizioni ordinate seguente:

1. Se il metodo IHttpResponse::SetStatus è stato chiamato utilizzando il fTrySkipCustomErrors flag , la risposta esistente viene passata e non viene visualizzato alcun errore dettagliato o personalizzato.
2. Se la proprietà è impostata su Custom, la ErrorMode risposta viene sostituita.
3. Se ErrorMode è impostato su Detailed e c'è una risposta esistente, la risposta viene passata.
4. Se ErrorMode è impostato su Detailed e non esiste alcuna risposta esistente, la risposta viene sostituita con un errore dettagliato.
1 Replace La risposta esistente viene sempre sostituita, indipendentemente dalla SetStatus modalità di chiamata.
2 PassThrough La risposta esistente viene sempre usata.

Esempio

Nell'esempio di codice seguente vengono specificati nuovi valori per le DefaultPathproprietà , ErrorModee DetailedMoreInformationLink . Una funzione helper visualizza i valori della sezione di configurazione prima e dopo la modifica.

' Connect to the WMI WebAdministration namespace.  
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")  

' Get the HTTP errors section.  
Set oSection = oWebAdmin.Get( _  
    "HttpErrorsSection.Path='" & _  
    "MACHINE/WEBROOT/APPHOST/',Location=''")  

' Display the class name of the section.  
WScript.Echo "[ " & oSection.Path_.Class & " ]"  

' Display the initial values.  
Call DisplayValues("Initial Values", oSection)

' Specify the path of a default error page.  
oSection.DefaultPath = _  
    "D:\inetpub\custerr\en-US\contoso\DefaultErrorPage.htm"  

' Specify a detailed more information link.  
oSection.DetailedMoreInformationLink = "http://www.contoso.com/MoreInfo.htm"  

'Set the ErrorMode property to Custom.  
oSection.ErrorMode = 1  

' Save the values to configuration.  
oSection.Put_  

' Refresh the oSection object variable with the new values.  
oSection.Refresh_  

' Display the changed values.  
Call DisplayValues("New Values", oSection)  

' ==== DisplayValues helper function. ====  
Function DisplayValues(HeadingText, oSection)  

    ' Display a heading.  
    WScript.Echo  
    WScript.Echo HeadingText  
    WScript.Echo String(Len(HeadingText), "-")  

    ' Display the non-embedded section properties.  
    For Each prop In oSection.Properties_  

        If Left( _  
            Prop.Qualifiers_("CIMTYPE"), 6) _  
            <> "object" then  
            WScript.Echo prop.Name & ": " & prop.Value  
        End If  

    Next
End Function

Gerarchia di ereditarietà

Configurationsection

ConfigurationSectionWithCollection

HttpErrorsSection

Requisiti

Tipo Descrizione
Client - IIS 7.0 in Windows Vista
- IIS 7.5 in Windows 7
- IIS 8.0 in Windows 8
- IIS 10.0 in Windows 10
Server - IIS 7.0 in Windows Server 2008
- IIS 7.5 in Windows Server 2008 R2
- IIS 8.0 in Windows Server 2012
- IIS 8.5 in Windows Server 2012 R2
- IIS 10.0 in Windows Server 2016
Prodotto - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
File MOF WebAdministration.mof

Vedere anche

Classe ConfigurationSection
Classe ConfigurationSectionWithCollection
Classe CustomError
Classe CustomErrorsSection
Classe HttpErrorElement
Metodo IHttpResponse::SetStatus