KestrelServerOptions クラス

定義

Kestrel 固有の機能のプログラムによる構成を提供します。

public ref class KestrelServerOptions
public class KestrelServerOptions
type KestrelServerOptions = class
Public Class KestrelServerOptions
継承
KestrelServerOptions

コンストラクター

KestrelServerOptions()

Kestrel 固有の機能のプログラムによる構成を提供します。

プロパティ

AddServerHeader

ヘッダーを各応答に Server 含めるかどうかを取得または設定します。

AllowAlternateSchemes

HTTP/2 要求と HTTP/3 要求の :scheme フィールドの検証方法を制御する値を取得または設定します。

HTTP/2 要求と HTTP/3 要求の ':scheme' フィールドがトランスポートと完全に一致する必要がある場合 (たとえば、TLS 接続の場合は http、TLS 以外の場合 false は http)。 HTTP/2 要求と HTTP/3 要求の ':scheme' フィールドを代替値に設定できる場合 true 、これは 'HttpRequest.Scheme' によって反映されます。 スキームは、 に https://datatracker.ietf.org/doc/html/rfc3986/#section-3.1従って有効である必要があります。 これは、信頼されたプロキシを使用する場合にのみ有効にします。 これは、代替プロトコルから変換するプロキシなどのシナリオで使用できます。 以下を参照してください。https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2.3 これを有効にするアプリケーションでは、使用する前に、想定されるスキームが提供されていることを検証する必要があります。

AllowHostHeaderOverride

HTTP/1.x では、要求ターゲットが絶対形式の場合 (RFC 9112 セクション 3.2.2 を参照)

GET http://www.example.com/path/to/index.html HTTP/1.1

ホスト ヘッダーは冗長です。 実際、RFC は次のように述べています。

配信元サーバーが要求ターゲットの絶対形式の要求を受信する場合、配信元サーバーは受信したホスト ヘッダー フィールド (存在する場合) を無視し、代わりに request-target のホスト情報を使用する必要があります。

ただし、スプーフィングの試行などの不一致が示される可能性があるため、要求ターゲットとホスト ヘッダーが一致するかどうかをチェックすることは、依然として賢明です。 このプロパティを true に設定すると、そのチェックがバイパスされ、Host ヘッダーが要求ターゲットの値で無条件に上書きされます。

AllowResponseHeaderCompression

応答ヘッダーの動的圧縮を許可するかどうかを制御する値を取得または設定します。 HPack 動的ヘッダー圧縮のセキュリティに関する考慮事項の詳細については、 を参照してください https://tools.ietf.org/html/rfc7541#section-7

AllowSynchronousIO

と に対して同期 IO を許可するかどうかを制御する値を Request 取得または設定します。 Response

ApplicationSchedulingMode

Kestrel がユーザー コールバックをスケジュールする方法を決定する値を取得または設定します。

ApplicationServices

Listen オプション コールバックを有効にして、起動時にアプリケーションによって登録されたサービスを解決して使用できるようにします。 通常は UseKestrel() によって初期化されます。

ConfigurationLoader

サーバーの起動時にエンドポイントが読み込まれる構成ソースを提供します。 既定では、 nullです。

DisableStringReuse

具体化された文字列値を要求間で再利用するかどうかを制御する値を取得または設定します。一致する場合、または文字列が常に再割り当てされる場合は 。

EnableAltSvc
古い.

HTTP/2 から "Alt-Svc" ヘッダーを返すか、HTTP/3 の低い応答を返すかを制御します。

Limits

要求制限オプションへのアクセスを提供します。

RequestHeaderEncodingSelector

指定した要求ヘッダー名の値をデコードするか、既定の を使用する を返す Encoding コールバックを取得または null 設定します UTF8Encoding

ResponseHeaderEncodingSelector

指定した応答ヘッダーまたはトレーラー名の値をエンコードするか、既定の を使用する を返す Encoding コールバックを取得または null 設定します ASCIIEncoding

メソッド

Configure()

Kestrel を設定するための構成ローダーを作成します。

Configure(IConfiguration)

入力として IConfiguration を受け取る Kestrel を設定するための構成ローダーを作成します。 この構成のスコープは、Kestrel の構成セクションに設定する必要があります。 を呼び出 Configure(IConfiguration, Boolean) して、動的エンドポイント バインドの更新を有効にします。

Configure(IConfiguration, Boolean)

入力として IConfiguration を受け取る Kestrel を設定するための構成ローダーを作成します。 この構成のスコープは、Kestrel の構成セクションに設定する必要があります。

ConfigureEndpointDefaults(Action<ListenOptions>)

新しく作成されたエンドポイントごとに実行する構成アクションを指定します。 これを再度呼び出すと、前のアクションが置き換えられます。

ConfigureHttpsDefaults(Action<HttpsConnectionAdapterOptions>)

新しく作成された https エンドポイントごとに実行する構成アクションを指定します。 これを再度呼び出すと、前のアクションが置き換えられます。

Listen(EndPoint)

特定のエンドポイントにバインドします。

Listen(EndPoint, Action<ListenOptions>)

特定のエンドポイントにバインドします。 コールバックは、エンドポイント固有の設定を構成します。

Listen(IPAddress, Int32)

指定された IP アドレスとポートにバインドします。

Listen(IPAddress, Int32, Action<ListenOptions>)

指定された IP アドレスとポートにバインドします。 コールバックは、エンドポイント固有の設定を構成します。

Listen(IPEndPoint)

特定の IP エンドポイントにバインドします。

Listen(IPEndPoint, Action<ListenOptions>)

指定された IP アドレスとポートにバインドします。 コールバックは、エンドポイント固有の設定を構成します。

ListenAnyIP(Int32)

IPv6 がサポートされていない場合は、IPv6 [::]、または IPv4 0.0.0.0 を使用して、すべての IP をリッスンします。

ListenAnyIP(Int32, Action<ListenOptions>)

IPv6 がサポートされていない場合は、IPv6 [::]、または IPv4 0.0.0.0 を使用して、すべての IP をリッスンします。

ListenHandle(UInt64)

ソケット ファイル記述子を開きます。

ListenHandle(UInt64, Action<ListenOptions>)

ソケット ファイル記述子を開きます。 コールバックは、エンドポイント固有の設定を構成します。

ListenLocalhost(Int32)

指定されたポートで ::1 と 127.0.0.1 をリッスンします。 0 を指定して動的ポートを要求することは、この種類のエンドポイントではサポートされていません。

ListenLocalhost(Int32, Action<ListenOptions>)

指定されたポートで ::1 と 127.0.0.1 をリッスンします。 0 を指定して動的ポートを要求することは、この種類のエンドポイントではサポートされていません。

ListenNamedPipe(String)

指定された名前付きパイプにバインドします。

ListenNamedPipe(String, Action<ListenOptions>)

指定された名前付きパイプにバインドします。 エンドポイント固有の設定を構成するには、コールバックを指定します。

ListenUnixSocket(String)

指定された Unix ドメイン ソケット パスにバインドします。

ListenUnixSocket(String, Action<ListenOptions>)

指定された Unix ドメイン ソケット パスにバインドします。 エンドポイント固有の設定を構成するには、コールバックを指定します。

拡張メソッド

UseSystemd(KestrelServerOptions)

システム ソケット ベースのアクティブ化ロジック (使用可能な場合) によって初期化されたファイル記述子 (SD_LISTEN_FDS_START 以降) を開きます。

UseSystemd(KestrelServerOptions, Action<ListenOptions>)

システム ソケット ベースのアクティブ化ロジック (使用可能な場合) によって初期化されたファイル記述子 (SD_LISTEN_FDS_START 以降) を開きます。 エンドポイント固有の設定を構成するには、コールバックを指定します。

適用対象