Aracılığıyla paylaş


KestrelServerOptions Sınıf

Tanım

Kestrel'e özgü özelliklerin programlı yapılandırmasını sağlar.

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

Oluşturucular

KestrelServerOptions()

Kestrel'e özgü özelliklerin programlı yapılandırmasını sağlar.

Özellikler

AddServerHeader

Üst bilginin her yanıta eklenip eklenmeyeceğini Server alır veya ayarlar.

AllowAlternateSchemes

HTTP/2 ve HTTP/3 istekleri için :scheme alanın nasıl doğrulandığını denetleen bir değer alır veya ayarlar.

Ardından false HTTP/2 ve HTTP/3 isteklerinin ':scheme' alanı aktarımla tam olarak eşleşmelidir (örneğin, TLS bağlantıları için https, TLS olmayanlar için http). Ardından HTTP/2 ve HTTP/3 istekleri için ':scheme' alanı alternatif değerlere ayarlanabilirse true ve bu alan 'HttpRequest.Scheme' tarafından yansıtılır. Düzenin öğesine göre https://datatracker.ietf.org/doc/html/rfc3986/#section-3.1geçerli olması gerekir. Bunu yalnızca güvenilen bir ara sunucuyla çalışırken etkinleştirin. Bu, proxy'lerin alternatif protokollerden dönüştürülmesi gibi senaryolarda kullanılabilir. Bkz. https://datatracker.ietf.org/doc/html/rfc7540#section-8.1.2.3. Bunu etkinleştiren uygulamalar, kullanmadan önce beklenen bir düzenin sağlandığını doğrulamalıdır.

AllowHostHeaderOverride

HTTP/1.x'te, bir istek hedefi mutlak biçimde olduğunda (bkz. RFC 9112 Bölüm 3.2.2), örneğin

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

Konak üst bilgisi yedeklidir. Aslında RFC şöyle diyor:

Bir kaynak sunucu mutlak istek-hedefi biçimine sahip bir istek aldığında, kaynak sunucu alınan Ana Bilgisayar üst bilgisi alanını (varsa) yoksayar ve bunun yerine istek-hedefinin konak bilgilerini kullanmalıdır.

Ancak, bir uyuşmazlık, örneğin bir kimlik sahtekarlığı girişimini gösterebileceğinden istek hedefiyle Konak üst bilgisinin eşleşip eşleşmediğini denetlemek mantıklıdır. Bu özelliğin true olarak ayarlanması, bunu denetleyen ve koşulsuz olarak Istek hedefinden gelen değerle Host üst bilgisinin üzerine yazan atlar.

AllowResponseHeaderCompression

Yanıt üst bilgilerinin dinamik sıkıştırmaya izin verilip verilmeyeceğini denetleen bir değer alır veya ayarlar. HPack dinamik üst bilgi sıkıştırmasının güvenlik konuları hakkında daha fazla bilgi için adresini ziyaret edin https://tools.ietf.org/html/rfc7541#section-7.

AllowSynchronousIO

ve için Request zaman uyumlu GÇ'ye izin verilip verilmediğini denetleen bir değer alır veya ayarlar Response

ApplicationSchedulingMode

Kestrel'in kullanıcı geri çağırmalarını nasıl zamanlaması gerektiğini belirleyen bir değer alır veya ayarlar.

ApplicationServices

Başlatma sırasında uygulama tarafından kaydedilen hizmetleri çözümlemek ve kullanmak için Dinleme seçenekleri geri çağırmasını etkinleştirir. Genellikle UseKestrel() tarafından başlatılır.

ConfigurationLoader

Uç noktaların sunucu başlangıcından yüklendiği bir yapılandırma kaynağı sağlar. Varsayılan değer: null.

DisableStringReuse

Gerçekleştirilmiş dize değerlerinin istekler arasında yeniden kullanılıp kullanılamayacağını denetleyecek bir değer alır veya ayarlar; eşleşiyorsa veya dizeler her zaman yeniden konumlandırılacaksa.

EnableAltSvc
Geçersiz.

HTTP/2'den "Alt-Svc" üst bilgisinin mi yoksa HTTP/3 için daha düşük yanıtın mı döndürüleceği denetler.

Limits

İstek sınırı seçeneklerine erişim sağlar.

RequestHeaderEncodingSelector

Belirtilen istek üst bilgisi adının değerinin kodunu çözmek veya varsayılan UTF8Encodingdeğerini kullanmak için değerini döndüren Encoding bir geri çağırma alır veya null ayarlar.

ResponseHeaderEncodingSelector

Belirtilen yanıt üst bilgisi veya römork adı değerini kodlamak veya varsayılan ASCIIEncodingdeğerini kullanmak için değerini döndüren Encoding bir geri çağırma alır veya null ayarlar.

Yöntemler

Configure()

Kestrel'i ayarlamak için bir yapılandırma yükleyicisi oluşturur.

Configure(IConfiguration)

Giriş olarak alan Kestrel'i ayarlamak için bir IConfiguration yapılandırma yükleyicisi oluşturur. Bu yapılandırmanın kapsamı Kestrel için yapılandırma bölümü olarak belirlenmiş olmalıdır. Dinamik uç nokta bağlama güncelleştirmelerini etkinleştirmek için çağrısı Configure(IConfiguration, Boolean) yapın.

Configure(IConfiguration, Boolean)

Giriş olarak alan Kestrel'i ayarlamak için bir IConfiguration yapılandırma yükleyicisi oluşturur. Bu yapılandırmanın kapsamı Kestrel için yapılandırma bölümü olarak belirlenmiş olmalıdır.

ConfigureEndpointDefaults(Action<ListenOptions>)

Yeni oluşturulan her uç nokta için çalıştırılacak yapılandırma Eylemini belirtir. Bunu yeniden çağırmak önceki eylemin yerini alır.

ConfigureHttpsDefaults(Action<HttpsConnectionAdapterOptions>)

Yeni oluşturulan her https uç noktası için çalıştırılacak bir yapılandırma Eylemi belirtir. Bunu yeniden çağırmak önceki eylemin yerini alır.

Listen(EndPoint)

Verilen uç noktaya bağlayın.

Listen(EndPoint, Action<ListenOptions>)

Verilen uç noktaya bağlayın. Geri arama, uç noktaya özgü ayarları yapılandırıyor.

Listen(IPAddress, Int32)

Verilen IP adresine ve bağlantı noktasına bağlayın.

Listen(IPAddress, Int32, Action<ListenOptions>)

Verilen IP adresine ve bağlantı noktasına bağlayın. Geri arama, uç noktaya özgü ayarları yapılandırıyor.

Listen(IPEndPoint)

Verilen IP uç noktasına bağlayın.

Listen(IPEndPoint, Action<ListenOptions>)

Verilen IP adresine ve bağlantı noktasına bağlayın. Geri arama, uç noktaya özgü ayarları yapılandırıyor.

ListenAnyIP(Int32)

IPv6 [::] veya IPv6 desteklenmiyorsa IPv4 0.0.0.0 kullanarak tüm IP'leri dinler.

ListenAnyIP(Int32, Action<ListenOptions>)

IPv6 [::] veya IPv6 desteklenmiyorsa IPv4 0.0.0.0 kullanarak tüm IP'leri dinler.

ListenHandle(UInt64)

Yuva dosyası tanımlayıcısı açın.

ListenHandle(UInt64, Action<ListenOptions>)

Yuva dosyası tanımlayıcısı açın. Geri arama, uç noktaya özgü ayarları yapılandırıyor.

ListenLocalhost(Int32)

Verilen bağlantı noktasıyla ::1 ve 127.0.0.1'de dinler. Bu uç nokta türü için 0 belirterek dinamik bağlantı noktası istemek desteklenmez.

ListenLocalhost(Int32, Action<ListenOptions>)

Verilen bağlantı noktasıyla ::1 ve 127.0.0.1'de dinler. Bu uç nokta türü için 0 belirterek dinamik bağlantı noktası istemek desteklenmez.

ListenNamedPipe(String)

Verilen adlandırılmış kanala bağlayın.

ListenNamedPipe(String, Action<ListenOptions>)

Verilen adlandırılmış kanala bağlayın. Uç noktaya özgü ayarları yapılandırmak için geri aramayı belirtin.

ListenUnixSocket(String)

Verilen Unix etki alanı yuva yoluna bağlayın.

ListenUnixSocket(String, Action<ListenOptions>)

Verilen Unix etki alanı yuva yoluna bağlayın. Uç noktaya özgü ayarları yapılandırmak için geri aramayı belirtin.

Uzantı Metotları

UseSystemd(KestrelServerOptions)

Varsa sistemli yuva tabanlı etkinleştirme mantığı tarafından başlatılan dosya tanımlayıcılarını (SD_LISTEN_FDS_START'den başlayarak) açın.

UseSystemd(KestrelServerOptions, Action<ListenOptions>)

Varsa sistemli yuva tabanlı etkinleştirme mantığı tarafından başlatılan dosya tanımlayıcılarını (SD_LISTEN_FDS_START'den başlayarak) açın. Uç noktaya özgü ayarları yapılandırmak için geri aramayı belirtin.

Şunlara uygulanır