Classe HttpErrorsSection
Configure la gestion des erreurs HTTP pour un serveur web.
Syntaxe
class HttpErrorsSection : ConfigurationSectionWithCollection
Méthodes
Le tableau suivant répertorie les méthodes exposées par la classe HttpErrorsSection
.
Nom | Description |
---|---|
Ajouter | (Hérité de ConfigurationSectionWithCollection.) |
Clear | (Hérité de ConfigurationSectionWithCollection .) |
Get | (Hérité de ConfigurationSectionWithCollection .) |
GetAllowDefinition | (Hérité de ConfigurationSection.) |
GetAllowLocation | (Hérité de ConfigurationSection .) |
Remove | (Hérité de ConfigurationSectionWithCollection .) |
RevertToParent | (Hérité de ConfigurationSection .) |
SetAllowDefinition | (Hérité de ConfigurationSection .) |
SetAllowLocation | (Hérité de ConfigurationSection .) |
Propriétés
Le tableau suivant répertorie les propriétés exposées par la classe HttpErrorsSection
.
Nom | Description |
---|---|
DefaultPath |
Valeur facultative string qui contient le chemin d'accès par défaut d’un fichier d’erreur HTTP ou d’une URL. Lorsqu’elle est pleine, cette valeur est héritée par la propriété Path des objets HttpErrorElement nouvellement créés. |
DefaultResponseMode |
Valeur facultative sint32 qui configure la réponse par défaut aux erreurs HTTP. Lorsqu’elle est pleine, cette valeur est héritée par la propriété ResponseMode des objets HttpErrorElement nouvellement créés. Les valeurs possibles sont répertoriées plus loin dans la section Remarques. |
DetailedMoreInformationLink |
Un valeur string facultative en lecture/écriture qui spécifie l’URL pour un lien, affiché en bas de la page, vers une page contenant des informations plus détaillées sur l’erreur qui a été générée. Les status , substatus , hresult et messageid de l’erreur sont envoyés en tant que partie intégrante de la chaîne de requête. Vous pouvez utiliser cette propriété pour pointer les utilisateurs finaux vers un emplacement personnalisé pour les informations d’erreur. Par défaut, il s’agit de https://go.microsoft.com/fwlink/?LinkID=62293. |
ErrorMode |
Énumération sint32 en lecture/écriture qui définit si la fonctionnalité d’erreur détaillée est activée, désactivée ou affichée uniquement aux clients locaux. Les valeurs possibles sont répertoriées plus loin dans la section Remarques. |
ExistingResponse |
Énumération sint32 en lecture/écriture qui spécifie comment IIS gère les erreurs personnalisées existantes. Les valeurs possibles sont répertoriées plus loin dans la section Remarques. |
HttpErrors |
Tableau de valeurs HttpErrorElement qui configurent la gestion pour des erreurs HTTP spécifiques. |
Location |
(Hérité de ConfigurationSection .) Propriété de clé. |
Path |
(Hérité de ConfigurationSection .) Propriété de clé. |
SectionInformation |
(Hérité de ConfigurationSection .) |
Sous-classes
Cette classe ne contient aucune sous-classe.
Notes
Cette classe expose les paramètres dans la section <httpErrors>
d’un fichier de configuration.
Les erreurs personnalisées représentées par la classe HttpErrorsSection
sont liées à IIS 7 et se trouvent dans l’espace de noms System.WebServer.Configuration. Chacune de ces erreurs est représentée par une instance de la classe HttpErrorElement.
Les erreurs personnalisées représentées par la classe CustomErrorsSection sont spécifiques à ASP.NET et se trouvent dans l’espace de noms System.Web. Chacune de ces erreurs est représentée par une instance de la classe CustomError.
Le tableau suivant répertorie les valeurs possibles pour la propriété DefaultResponseMode
. La valeur par défaut est 0 (File
).
Valeur | Mot clé | Description |
---|---|---|
0 | File |
Le serveur web retourne la page web depuis le fichier statique spécifié dans la propriété Path de la classe HttpErrorElement . Remarque :les erreurs personnalisées sont spécifiques à une langue et renvoient généralement l’erreur personnalisée dans la langue du client. Cela requiert que le module linguistique du client soit installé. Le chemin d’accès au fichier est construit comme suit : PrefixLanguageFilePath\ClientLanguageID\ErrorCodeFile Par exemple, si PrefixLanguageFilePath est « d:\inetpub\custerr », le navigateur client envoie « en-us » dans l’en-tête Accept-Language et le code d’erreur est 404, le chemin d’accès obtenu lorsque le module linguistique en-US est installé est d:\inetpub\custerr\en-us\404.htm. Si ja-JP est la langue du système et que le module linguistique en-US n’est pas installé, le chemin d’accès résultant est d:\inetpub\custerr\ja-jp\404.htm. |
1 | ExecuteURL |
Le serveur web retourne la page ASP interne spécifiée dans la propriété Path de la classe HttpErrorElement . L’URL doit ne trouver dans l’étendue du même pool d’applications. Remarque : Dans IIS 7, la redirection crée une URL au format suivant (les éléments entre crochets sont facultatifs) : /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode> |
2 | Redirect |
Le serveur web fournit une réponse HTTP 302 Found et inclut l’URL spécifiée dans la propriété Path de la classe HttpErrorElement dans le champ Location de la réponse. Si la réponse est une méthode GET au lieu d’une méthode HEAD , elle doit également inclure une entité qui a un lien hypertexte court vers la nouvelle URL. Remarque : Dans IIS 7, la redirection crée une URL au format suivant (les éléments entre crochets sont facultatifs) : /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode> |
Le tableau suivant répertorie les valeurs possibles pour la propriété ErrorMode
. La valeur par défaut est 0 (DetailedLocalOnly
).
Valeur | Mot clé | Description |
---|---|---|
0 | DetailedLocalOnly |
Une réponse à une erreur détaillée est générée uniquement si la requête provient de l’ordinateur local. Si la requête provient d’une adresse externe, le serveur génère une réponse d’erreur personnalisée. Remarque : la valeur de la propriété ExistingResponse détermine si une erreur détaillée ou personnalisée est générée. |
1 | Custom |
L’erreur générée par le module ou le serveur est remplacée par une page personnalisée que vous spécifiez. Ce mode est utile pour fournir des messages d’erreur plus conviviaux aux utilisateurs finaux. Remarque : ce paramètre désactive les erreurs détaillées, même pour les requêtes locales. |
2 | Detailed |
Une page contenant des informations détaillées sur l’erreur d’application s’affiche et les erreurs personnalisées ne sont pas affichées. Ce mode est utile pour tester et déboguer des sites web et des applications. Remarque : il s’agit d’un risque de sécurité de définir ErrorMode sur Detailed , car même les clients distants recevront des informations d’erreur détaillées susceptibles d’entraîner une divulgation d’informations indésirables. |
Le tableau suivant répertorie les valeurs possibles pour la propriété ExistingResponse
. La valeur par défaut est 0 (Auto
).
Valeur | Mot clé | Description |
---|---|---|
0 | Auto |
La réponse dépend de la première correspondance réussie de l’ensemble des conditions ordonnées suivantes : 1. Si la méthode IHttpResponse::SetStatus a été appelée à l’aide de l’indicateur fTrySkipCustomErrors , la réponse existante est transmise et aucune erreur détaillée ou personnalisée n’est affichée.2. Si la propriété ErrorMode est définie sur Custom , la réponse est remplacée.3. Si ErrorMode est défini sur Detailed et qu’il existe une réponse, la réponse est transmise.4. Si ErrorMode est défini sur Detailed et qu’il n’existe aucune réponse, la réponse est remplacée par une erreur détaillée. |
1 | Replace |
La réponse existante est toujours remplacée, indépendamment de la façon dont SetStatus est appelé. |
2 | PassThrough |
La réponse existante est toujours utilisée. |
Exemple
L’exemple de code suivant spécifie de nouvelles valeurs pour les propriétés DefaultPath
, ErrorMode
et DetailedMoreInformationLink
. Une fonction d’assistance affiche les valeurs de section de configuration avant et après la modification.
' 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
Hiérarchie d'héritage
ConfigurationSectionWithCollection
HttpErrorsSection
Spécifications
Type | Description |
---|---|
Client | - IIS 7.0 sur Windows Vista - IIS 7.5 sur Windows 7 - IIS 8.0 sous Windows 8 - IIS 10.0 sur Windows 10 |
Serveur | - IIS 7.0 sur Windows Server 2008 - IIS 7.5 sous Windows Server 2008 R2 - IIS 8.0 sur Windows Server 2012 - IIS 8.5 sur Windows Server 2012 R2 - IIS 10.0 sur Windows Server 2016 |
Produit | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 |
Fichier MOF | WebAdministration.mof |
Voir aussi
Classe ConfigurationSection
Classe ConfigurationSectionWithCollection
Classe CustomError
Classe CustomErrorsSection
Classe HttpErrorElement
Méthode IHttpResponse::SetStatus