HttpErrorsSection クラス

Web サーバーの HTTP エラー処理を構成します。

構文

class HttpErrorsSection : ConfigurationSectionWithCollection  

メソッド

次の表に、HttpErrorsSection クラスによって公開されるメソッドの一覧を示します。

名前 説明
[追加] (ConfigurationSectionWithCollection から継承。)
Clear (ConfigurationSectionWithCollection から継承。)
Get (ConfigurationSectionWithCollection から継承。)
GetAllowDefinition (ConfigurationSection から継承。)
GetAllowLocation (ConfigurationSection から継承。)
削除 (ConfigurationSectionWithCollection から継承。)
RevertToParent (ConfigurationSection から継承。)
SetAllowDefinition (ConfigurationSection から継承。)
SetAllowLocation (ConfigurationSection から継承。)

プロパティ

次の表は、HttpErrorsSection クラスによって公開されるプロパティの一覧です。

名前 説明
DefaultPath HTTP エラー ファイルまたは URL の既定のパスを含む、オプションの string 値。 空でない場合、この値は新しく作成された HttpErrorElement オブジェクトの Path プロパティによって継承されます。
DefaultResponseMode HTTP エラーに対する既定の応答を構成する、オプションの sint32 値。 空でない場合、この値は新しく作成された HttpErrorElement オブジェクトの ResponseMode プロパティによって継承されます。 使用できる値の一覧は、後述の「注釈」セクションに示します。
DetailedMoreInformationLink ページの下部に表示される、発生したエラーに関する詳細情報を含むページへのリンクの URL を指定する、オプションの読み取り/書き込みの string 値。 エラーの statussubstatushresultmessageid は、クエリ文字列の一部として送信されます。 このプロパティを使用すると、エンド ユーザーにエラー情報があるカスタマイズした場所を指定できます。 既定値は、https://go.microsoft.com/fwlink/?LinkID=62293 です。
ErrorMode 詳細なエラー機能をオンにする、オフにする、またはローカル クライアントにのみ表示するかを指定する、読み取り/書き込みの sint32 列挙型。 使用できる値の一覧は、後述の「注釈」セクションに示します。
ExistingResponse IIS で既存のカスタム エラーを処理する方法を指定する、読み取り/書き込みの sint32 列挙型。 使用できる値の一覧は、後述の「注釈」セクションに示します。
HttpErrors 特定の HTTP エラーの処理を構成する、HttpErrorElement 値の配列。
Location (ConfigurationSection から継承。)キー プロパティ。
Path (ConfigurationSection から継承。)キー プロパティ。
SectionInformation (ConfigurationSection から継承。)

サブクラス

このクラスにはサブクラスが含まれていません。

解説

このクラスは、構成ファイルの <httpErrors> セクションの設定を公開します。

HttpErrorsSection クラスによって表されるカスタム エラーは IIS 7 に関連するものであり、System.WebServer.Configuration 名前空間にあります。 これらの各エラーは、HttpErrorElement クラスのインスタンスによって表されます。

CustomErrorsSection クラスによって表されるカスタム エラーは ASP.NET に固有であり、System.Web 名前空間にあります。 これらの各エラーは、CustomError クラスのインスタンスによって表されます。

次の表に、DefaultResponseMode プロパティとして使用できる値の一覧を示します。 既定値は 0 (File) です。

Value キーワード 説明
0 File Web サーバーでは、HttpErrorElement クラスの Path プロパティで指定された静的ファイルから Web ページを返します。 注: カスタム エラーは言語固有であり、通常はクライアントの言語でカスタム エラーを返します。 これには、クライアントの言語パックがインストールされている必要があります。 ファイル パスの構成は PrefixLanguageFilePath\ClientLanguageID\ErrorCodeFile のようになります。たとえば、PrefixLanguageFilePath が "d:\inetpub\custerr" の場合、クライアント ブラウザーから Accept-Language ヘッダーに "en-us" が送信され、エラー コードは 404 で、en-US 言語パックがインストールされている場合の結果のパスは d:\inetpub\custerr\en-us\404.htm になります。 システム言語が ja-JP で、en-US 言語パックがインストールされていない場合、結果のパスは d:\inetpub\custerr\ja-jp\404.htm になります。
1 ExecuteURL Web サーバーでは、HttpErrorElement クラスの Path プロパティで指定された内部 ASP ページを返します。 URL は、同じアプリケーション プールのスコープ内にある必要があります。 注: IIS 7 では、リダイレクトによって URL が /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode> の形式で作成されます (角かっこ内の項目はオプション)。
2 Redirect Web サーバーでは、HTTP 302 Found の応答を提供し、その応答の Location フィールドに HttpErrorElement クラスの Path プロパティで指定された URL を含めます。 応答が HEAD メソッドではなく GET メソッドである場合は、新しい URL への短いハイパーリンクを持つエンティティも含める必要があります。 注: IIS 7 では、リダイレクトによって URL が /<CustomErrorPage>[?<QueryString>]&resourcePath=<OriginalURL>[?<OriginalQueryString>]&statusCode=<StatusCode> の形式で作成されます (角かっこ内の項目はオプション)。

次の表に、ErrorMode プロパティとして使用できる値の一覧を示します。 既定値は 0 (DetailedLocalOnly) です。

Value キーワード 説明
0 DetailedLocalOnly 詳細なエラー応答は、要求がローカル コンピューターから送信された場合にのみ生成されます。 要求が外部アドレスから送信された場合、サーバーでカスタム エラー応答が生成されます。 注: ExistingResponse プロパティの値によって、詳細エラーとカスタム エラーのどちらが生成されるかが決まります。
1 Custom モジュールまたはサーバーで生成されるエラーは、ユーザーが指定したカスタム ページに置き換えられます。 このモードは、エンド ユーザーによりわかりやすいエラー メッセージを提供するのに便利です。 注: この設定では、ローカル要求の場合でも、詳細なエラーがオフになります。
2 Detailed アプリケーション エラーに関する詳細な情報が含まれるページが表示され、カスタム エラーは表示されません。 このモードは、Web サイトとアプリケーションのテストとデバッグに役立ちます。 注: リモート クライアントであっても、望ましくない情報漏えいにつながる可能性のある詳細なエラー情報を受け取るため、ErrorModeDetailed に設定することにはセキュリティ リスクが伴います。

次の表に、ExistingResponse プロパティとして使用できる値の一覧を示します。 既定値は 0 (Auto) です。

Value キーワード 説明
0 Auto 応答は、次の一連の順序条件のうち、最初に一致したものによって変わります。

1.fTrySkipCustomErrors フラグを使用して IHttpResponse::SetStatus メソッドが呼び出された場合、既存の応答が渡され、詳細エラーもカスタム エラーも表示されません。
2.ErrorMode プロパティが Custom に設定されている場合、応答は置き換えられます。
3.ErrorModeDetailed に設定されており、既存の応答がある場合は、その応答が渡されます。
4.ErrorModeDetailed に設定されており、既存の応答がない場合、その応答は詳細エラーに置き換えられます。
1 Replace SetStatus が呼び出された方法に関係なく、既存の応答は常に置き換えられます。
2 PassThrough 既存の応答が常に使用されます。

次のコード例では、DefaultPathErrorModeDetailedMoreInformationLink の各プロパティの新しい値を指定します。 ヘルパー関数により、変更の前後に構成セクションの値が表示されます。

' 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

継承階層

ConfigurationSection

ConfigurationSectionWithCollection

HttpErrorsSection

要件

説明
クライアント - Windows Vista 上の IIS 7.0
- Windows 7 上の IIS 7.5
- Windows 8 上の IIS 8.0
- Windows 10 上の IIS 10.0
[サーバー] - Windows Server 2008 上の IIS 7.0
- Windows Server 2008 R2 上の IIS 7.5
- Windows Server 2012 上の IIS 8.0
- Windows Server 2012 R2 上の IIS 8.5
- Windows Server 2016 上の IIS 10.0
Product - IIS 7.0、IIS 7.5、IIS 8.0、IIS 8.5、IIS 10.0
MOF ファイル WebAdministration.mof

参照

ConfigurationSection クラス
ConfigurationSectionWithCollection クラス
CustomError クラス
CustomErrorsSection クラス
HttpErrorElement クラス
IHttpResponse::SetStatus メソッド