Compartilhar via


Classe HttpErrorsSection

Configura o tratamento de erros HTTP para um servidor Web.

Sintaxe

class HttpErrorsSection : ConfigurationSectionWithCollection  

Métodos

A tabela a seguir lista os métodos expostos pela classe HttpErrorsSection.

Nome Descrição
Add (Herdado de ConfigurationSectionWithCollection.)
Limpar (Herdado de ConfigurationSectionWithCollection.)
Get (Herdado de ConfigurationSectionWithCollection.)
GetAllowDefinition (Herdado de ConfigurationSection.)
GetAllowLocation (Herdado de ConfigurationSection.)
Remover (Herdado de ConfigurationSectionWithCollection.)
RevertToParent (Herdado de ConfigurationSection.)
SetAllowDefinition (Herdado de ConfigurationSection.)
SetAllowLocation (Herdado de ConfigurationSection.)

Propriedades

A tabela a seguir lista as propriedades expostas pela classe HttpErrorsSection.

Nome Descrição
DefaultPath Um valor opcional string que contém o caminho padrão de um arquivo de erro HTTP ou URL. Quando não está vazio, esse valor é herdado pela propriedade Path de objetos HttpErrorElement recém-criados.
DefaultResponseMode Um valor opcional sint32 que configura a resposta padrão para erros HTTP. Quando não está vazio, esse valor é herdado pela propriedade ResponseMode de objetos HttpErrorElement recém-criados. Os valores possíveis estão listados posteriormente na seção Comentários.
DetailedMoreInformationLink Um valor string opcional de leitura/gravação que especifica a URL de um link, mostrado na parte inferior da página, para uma página com informações mais detalhadas sobre o erro gerado. O status, substatus, hresult e messageid do erro são enviados como parte da cadeia de caracteres de consulta. Você pode usar essa propriedade para apontar os usuários finais para um local personalizado para obter informações de erro. O padrão é https://go.microsoft.com/fwlink/?LinkID=62293.
ErrorMode Uma enumeração sint32 de leitura/gravação que especifica se a funcionalidade de erro detalhada está habilitada, desabilitada ou mostrada apenas para clientes locais. Os valores possíveis estão listados posteriormente na seção Comentários.
ExistingResponse Uma enumeração sint32 de leitura/gravação que especifica como os IIS lidam com erros personalizados existentes. Os valores possíveis estão listados posteriormente na seção Comentários.
HttpErrors Uma matriz de valores HttpErrorElement que configura o tratamento para erros HTTP específicos.
Location (Herdado de ConfigurationSection.) Uma propriedade chave.
Path (Herdado de ConfigurationSection.) Uma propriedade chave.
SectionInformation (Herdado de ConfigurationSection.)

Subclasses

Essa classe não contém subclasses.

Comentários

Essa classe expõe as configurações na seção <httpErrors> de um arquivo de configuração.

Os erros personalizados representados pela classe HttpErrorsSection estão relacionados aos IIS 7 e estão no namespace System.WebServer.Configuration. Cada um desses erros é representado por uma instância da classe HttpErrorElement.

Os erros personalizados representados pela classe CustomErrorsSection são específicos para ASP.NET e estão no namespace System.Web. Cada um desses erros é representado por uma instância da classe CustomError.

A tabela a seguir lista os possíveis valores da propriedade DefaultResponseMode. O padrão é 0 (File).

Valor Palavra-chave Descrição
0 File O servidor Web retorna a página da Web do arquivo estático especificado na propriedade Path da classe HttpErrorElement. Observação: erros personalizados são específicos a um idioma e normalmente retornam o erro personalizado no idioma do cliente. Isso requer que o pacote de idiomas do cliente esteja instalado. O caminho do arquivo é construído da seguinte maneira: PrefixLanguageFilePath\ClientLanguageID\ErrorCodeFile Por exemplo, se PrefixLanguageFilePath for "d:\inetpub\custerr", o navegador do cliente enviará "en-us" no cabeçalho Accept-Language e o código de erro for 404, o caminho resultante quando o pacote de idiomas en-US estiver instalado será d:\inetpub\custerr\en-us\404.htm. Se ja-JP for o idioma do sistema e o pacote de idiomas en-US não estiver instalado, o caminho resultante será d:\inetpub\custerr\ja-jp\404.htm.
1 ExecuteURL O servidor Web retorna a página ASP interna especificada na propriedade Path da classe HttpErrorElement. A URL deve estar no escopo do mesmo pool de aplicativos. Observação: nos IIS 7, o redirecionamento cria uma URL com o seguinte formato (os itens entre colchetes são opcionais): /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode>
2 Redirect O servidor Web fornece uma resposta HTTP 302 Found e inclui a URL especificada na propriedade Path da classe HttpErrorElement no campo Location da resposta. Se a resposta for um método GET em vez de um método HEAD, ela também deverá incluir uma entidade que tenha um hiperlink curto para a nova URL. Observação: nos IIS 7, o redirecionamento cria uma URL com o seguinte formato (os itens entre colchetes são opcionais): /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode>

A tabela a seguir lista os possíveis valores da propriedade ErrorMode. O padrão é 0 (DetailedLocalOnly).

Valor Palavra-chave Descrição
0 DetailedLocalOnly Uma resposta de erro detalhada será gerada somente se a solicitação vier do computador local. Se a solicitação for proveniente de um endereço externo, o servidor gerará uma resposta de erro personalizada. Observação: o valor da propriedade ExistingResponse determina se um erro detalhado ou personalizado é gerado.
1 Custom O erro gerado pelo módulo ou servidor é substituído por uma página personalizada que você especificar. Esse modo é útil para fornecer mensagens de erro mais amigáveis aos usuários finais. Observação: essa configuração desativa erros detalhados, mesmo para solicitações locais.
2 Detailed Uma página com informações detalhadas sobre o erro do aplicativo é exibida e erros personalizados não são mostrados. Esse modo é útil para testar e depurar sites e aplicativos da Web. Observação: é um risco de segurança definir ErrorMode como Detailed, porque mesmo clientes remotos receberão informações detalhadas de erro que podem levar à divulgação não autorizada de informação.

A tabela a seguir lista os possíveis valores da propriedade ExistingResponse. O padrão é 0 (Auto).

Valor Palavra-chave Descrição
0 Auto A resposta depende da primeira correspondência bem-sucedida do seguinte conjunto de condições ordenadas:

1. Se o método IHttpResponse::SetStatus foi chamado usando o sinalizador fTrySkipCustomErrors, a resposta existente será passada e nenhum erro detalhado ou personalizado será mostrado.
2. Se a propriedade ErrorMode estiver definida como Custom, a resposta será substituída.
3. Se ErrorMode estiver definido como Detailed e houver uma resposta existente, a resposta será transmitida.
4. Se ErrorMode estiver definido como Detailed e não houver resposta existente, a resposta será substituída por um erro detalhado.
1 Replace A resposta existente é sempre substituída, independentemente de como SetStatus foi chamado.
2 PassThrough A resposta existente é sempre usada.

Exemplo

O exemplo de código a seguir especifica novos valores para as propriedades DefaultPath, ErrorMode e DetailedMoreInformationLink. Uma função auxiliar exibe os valores da seção de configuração antes e depois da alteração.

' 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

Hierarquia de herança

ConfigurationSection

ConfigurationSectionWithCollection

HttpErrorsSection

Requisitos

Tipo Descrição
Cliente - IIS 7.0 no Windows Vista
– IIS 7.5 no Windows 7
– IIS 8.0 no Windows 8
– IIS 10.0 no Windows 10
Servidor – IIS 7.0 no Windows Server 2008
– IIS 7.5 no Windows Server 2008 R2
– IIS 8.0 no Windows Server 2012
– IIS 8.5 no Windows Server 2012 R2
– IIS 10.0 no Windows Server 2016
Product – IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
Arquivo MOF WebAdministration.mof

Confira também

Classe ConfigurationSection
Classe ConfigurationSectionWithCollection
Classe CustomError
Classe CustomErrorsSection
Classe HttpErrorElement
Método IHttpResponse::SetStatus