Udostępnij za pośrednictwem


KestrelServerOptions Klasa

Definicja

Zapewnia programową konfigurację funkcji specyficznych dla platformy Kestrel.

public ref class KestrelServerOptions
public class KestrelServerOptions
type KestrelServerOptions = class
Public Class KestrelServerOptions
Dziedziczenie
KestrelServerOptions

Konstruktory

KestrelServerOptions()

Zapewnia programową konfigurację funkcji specyficznych dla platformy Kestrel.

Właściwości

AddServerHeader

Pobiera lub ustawia, czy Server nagłówek powinien być uwzględniony w każdej odpowiedzi.

AllowAlternateSchemes

Pobiera lub ustawia wartość, która kontroluje sposób :scheme sprawdzania poprawności pola dla żądań HTTP/2 i HTTP/3.

Jeśli false pole ":scheme" dla żądań HTTP/2 i HTTP/3 musi dokładnie odpowiadać transportowi (np. https dla połączeń TLS, http dla protokołu innych niż TLS). W takim przypadku true pole ":scheme" dla żądań HTTP/2 i HTTP/3 można ustawić na wartości alternatywne i zostanie to odzwierciedlone przez element "HttpRequest.Scheme". Schemat musi być nadal prawidłowy zgodnie z https://datatracker.ietf.org/doc/html/rfc3986/#section-3.1. Włącz tę opcję tylko podczas pracy z zaufanym serwerem proxy. Może to być używane w scenariuszach, takich jak serwery proxy konwersji z alternatywnych protokołów. Zobacz: . Aplikacje, które to umożliwiają, powinny sprawdzić, czy oczekiwany schemat jest udostępniany przed użyciem.

AllowHostHeaderOverride

W przypadku protokołu HTTP/1.x, gdy obiekt docelowy żądania jest w formie bezwzględnej (zobacz RFC 9112 Sekcja 3.2.2), na przykład

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

nagłówek hosta jest nadmiarowy. W rzeczywistości, RFC mówi

Gdy serwer pochodzenia odbiera żądanie z bezwzględną formą obiektu docelowego żądania, serwer pochodzenia MUSI zignorować odebrane pole nagłówka hosta (jeśli istnieje) i zamiast tego użyć informacji o hoście obiektu docelowego żądania.

Jednak nadal rozsądne jest sprawdzenie, czy element docelowy żądania i nagłówek hosta są zgodne, ponieważ niezgodność może wskazywać na przykład próbę fałszowania. Ustawienie tej właściwości na wartość true pomija sprawdzanie i bezwarunkowo zastępuje nagłówek hosta wartością z obiektu docelowego żądania.

AllowResponseHeaderCompression

Pobiera lub ustawia wartość, która kontroluje, czy dynamiczna kompresja nagłówków odpowiedzi jest dozwolona. Aby uzyskać więcej informacji na temat zagadnień dotyczących zabezpieczeń kompresji dynamicznego nagłówka HPack, odwiedź stronę https://tools.ietf.org/html/rfc7541#section-7.

AllowSynchronousIO

Pobiera lub ustawia wartość określającą, czy synchroniczne operacje we/wy są dozwolone dla elementu Request i Response

ApplicationSchedulingMode

Pobiera lub ustawia wartość, która określa, w jaki sposób Kestrel powinien zaplanować wywołania zwrotne użytkowników.

ApplicationServices

Włącza wywołanie zwrotne opcji nasłuchiwania w celu rozpoznawania i używania usług zarejestrowanych przez aplikację podczas uruchamiania. Zazwyczaj inicjowane przez UseKestrel().

ConfigurationLoader

Udostępnia źródło konfiguracji, z którego będą ładowane punkty końcowe na serwerze uruchamiania. Wartość domyślna to null.

DisableStringReuse

Pobiera lub ustawia wartość, która określa, czy wartości ciągów zmaterializowane zostaną ponownie użyte w żądaniach; jeśli są one zgodne, lub jeśli ciągi będą zawsze ponownie przydzielane.

EnableAltSvc
Przestarzałe.

Określa, czy zwracać nagłówek "Alt-Svc" z odpowiedzi HTTP/2 lub niższej dla protokołu HTTP/3.

Limits

Zapewnia dostęp do opcji limitu żądań.

RequestHeaderEncodingSelector

Pobiera lub ustawia wywołanie zwrotne, które zwraca Encoding , aby zdekodować wartość dla określonej nazwy nagłówka żądania lub null użyć wartości domyślnej UTF8Encoding.

ResponseHeaderEncodingSelector

Pobiera lub ustawia wywołanie zwrotne, które zwraca Encoding wartość w celu zakodowania wartości dla określonego nagłówka odpowiedzi lub nazwy przyczepy, lub null do użycia domyślnego ASCIIEncoding.

Metody

Configure()

Tworzy moduł ładujący konfiguracji do konfigurowania usługi Kestrel.

Configure(IConfiguration)

Tworzy moduł ładujący konfiguracji do konfigurowania usługi Kestrel, który przyjmuje IConfiguration jako dane wejściowe. Ta konfiguracja musi być ograniczona do sekcji konfiguracji dla usługi Kestrel. Wywołaj metodę Configure(IConfiguration, Boolean) , aby włączyć aktualizacje powiązań dynamicznego punktu końcowego.

Configure(IConfiguration, Boolean)

Tworzy moduł ładujący konfiguracji do konfigurowania usługi Kestrel, który przyjmuje IConfiguration jako dane wejściowe. Ta konfiguracja musi być ograniczona do sekcji konfiguracji dla usługi Kestrel.

ConfigureEndpointDefaults(Action<ListenOptions>)

Określa akcję konfiguracji do uruchomienia dla każdego nowo utworzonego punktu końcowego. Wywołanie tego ponownie spowoduje zastąpienie poprzedniej akcji.

ConfigureHttpsDefaults(Action<HttpsConnectionAdapterOptions>)

Określa akcję konfiguracji do uruchomienia dla każdego nowo utworzonego punktu końcowego https. Wywołanie tego ponownie spowoduje zastąpienie poprzedniej akcji.

Listen(EndPoint)

Powiąż z danym punktem końcowym.

Listen(EndPoint, Action<ListenOptions>)

Powiąż z danym punktem końcowym. Wywołanie zwrotne konfiguruje ustawienia specyficzne dla punktu końcowego.

Listen(IPAddress, Int32)

Powiąż z danym adresem IP i portem.

Listen(IPAddress, Int32, Action<ListenOptions>)

Powiąż z danym adresem IP i portem. Wywołanie zwrotne konfiguruje ustawienia specyficzne dla punktu końcowego.

Listen(IPEndPoint)

Powiąż z danym punktem końcowym adresu IP.

Listen(IPEndPoint, Action<ListenOptions>)

Powiąż z danym adresem IP i portem. Wywołanie zwrotne konfiguruje ustawienia specyficzne dla punktu końcowego.

ListenAnyIP(Int32)

Nasłuchuje na wszystkich adresach IP przy użyciu protokołu IPv6 [::], lub IPv4 0.0.0.0, jeśli protokół IPv6 nie jest obsługiwany.

ListenAnyIP(Int32, Action<ListenOptions>)

Nasłuchuje na wszystkich adresach IP przy użyciu protokołu IPv6 [::], lub IPv4 0.0.0.0, jeśli protokół IPv6 nie jest obsługiwany.

ListenHandle(UInt64)

Otwórz deskryptor pliku gniazda.

ListenHandle(UInt64, Action<ListenOptions>)

Otwórz deskryptor pliku gniazda. Wywołanie zwrotne konfiguruje ustawienia specyficzne dla punktu końcowego.

ListenLocalhost(Int32)

Nasłuchuje na ::1 i 127.0.0.1 przy użyciu danego portu. Żądanie portu dynamicznego przez określenie wartości 0 nie jest obsługiwane dla tego typu punktu końcowego.

ListenLocalhost(Int32, Action<ListenOptions>)

Nasłuchuje na ::1 i 127.0.0.1 przy użyciu danego portu. Żądanie portu dynamicznego przez określenie wartości 0 nie jest obsługiwane dla tego typu punktu końcowego.

ListenNamedPipe(String)

Powiąż z podanym nazwanym potokem.

ListenNamedPipe(String, Action<ListenOptions>)

Powiąż z podanym nazwanym potokem. Określ wywołanie zwrotne, aby skonfigurować ustawienia specyficzne dla punktu końcowego.

ListenUnixSocket(String)

Powiąż z daną ścieżką gniazda domeny systemu Unix.

ListenUnixSocket(String, Action<ListenOptions>)

Powiąż z daną ścieżką gniazda domeny systemu Unix. Określ wywołanie zwrotne, aby skonfigurować ustawienia specyficzne dla punktu końcowego.

Metody rozszerzania

UseSystemd(KestrelServerOptions)

Otwórz deskryptory plików (począwszy od SD_LISTEN_FDS_START) zainicjowane przez logikę aktywacji opartej na gniazdach systemd, jeśli są dostępne.

UseSystemd(KestrelServerOptions, Action<ListenOptions>)

Otwórz deskryptory plików (począwszy od SD_LISTEN_FDS_START) zainicjowane przez logikę aktywacji opartej na gniazdach systemd, jeśli są dostępne. Określ wywołanie zwrotne, aby skonfigurować ustawienia specyficzne dla punktu końcowego.

Dotyczy