Windows için kayıt defteri ayarlarını Http.sys

Bu makalede Windows için Http.sys kayıt defteri ayarları açıklanmaktadır.

Özgün ürün sürümü: Windows 8, Windows Server 2012, 2008 R2, 2008
Özgün KB numarası: 820129

Özet

Windows Server 2008 ve sonraki sürümlerinde Http.sys, Köprü Metni Aktarım Protokolü (HTTP) isteklerini işleyen çekirdek modu sürücüsüdür. Belirli gereksinimlere göre çeşitli kayıt defteri değerleri yapılandırılabilir. Kayıt defteri anahtarları bölümündeki tablo, bu kayıt defteri değerleri hakkında aşağıdaki bilgileri içerir:

  • Kayıt defteri anahtar adları
  • Varsayılan değerler
  • Geçerli değer aralıkları
  • Kayıt defteri anahtar işlevleri
  • UYARI kodları (uygun olduğunda)

Bu makale ileri düzey kullanıcılara yöneliktir ve kayıt defteri ve kayıt defteri değiştirildiğinde söz konusu riskler hakkında bilgi sahibi olduğunu varsayar.

Kayıt defteri anahtarları

Önemli

Bu bölüm, yöntem veya görev, kayıt defterini nasıl değiştireceğinizin anlatıldığı adımları içermektedir. Ancak kayıt defterini hatalı biçimde değiştirirseniz önemli sorunlar oluşabilir. Bu nedenle, bu adımları dikkatli bir şekilde izlediğinizden emin olun. Daha fazla koruma için değiştirmeden önce kayıt defterini yedekleyin. Böylece, bir sorun oluşursa kayıt defterini daha sonra geri yükleyebilirsiniz. Kayıt defterini yedekleme ve geri yükleme hakkında daha fazla bilgi için bkz. Windows'ta kayıt defterini yedekleme ve geri yükleme.

Aşağıdaki kayıt defteri anahtarı altında aşağıdaki DWORD kayıt defteri değerlerini oluşturabilirsiniz:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

Kayıt defteri anahtarı Varsayılan değer Geçerli değer aralığı Kayıt defteri anahtarı işlevi UYARI kodu
AllowRestrictedChars 0 Boolean Sıfır değilse, Http.sys istek URL'lerinde U+0000 - U+001F ve U+007F - U+009F aralıklarının kodunu çözen onaltılık kaçış karakterlerini kabul eder. 0
EnableAggressiveMemoryUsage 0 0
1
Disk belleği olmayan havuz belleğini önceden ayırın. Varsayılan olarak, 20 megabayttan (MB) az disk belleği olmayan havuz belleği kullanılabilir olduğunda HTTP hizmeti bağlantıları kabul etmemektedir. Bu değeri kayıt defterine ekledikten sonra, 8 MB'tan az disk belleği olmayan havuz belleği kullanılabilir olduğunda HTTP hizmeti bağlantıları kabul etmemeye devam eder. Bu kayıt defteri değerinin ayarlanması, Httperr.log dosyasındaki Connections_refused sayısını ve 503 hata sayısınıazaltabilir. 0
EnableNonUTF8 1 Boolean Sıfır ise, Http.sys yalnızca UTF-8 ile kodlanmış URL'leri kabul eder. Sıfır değilse, Http.sys isteklerde ANSI veya DBCS ile kodlanmış URL'leri de kabul eder. 0
FavorUTF8 1 Boolean Sıfır değilse, Http.sys her zaman önce URL'nin kodunu UTF-8 olarak çözmeyi dener; dönüştürme başarısız olursa ve EnableNonUTF8 sıfır değilse Http.sys ansi veya DBCS olarak kodunu çözmeyi dener. Sıfır (ve EnableNonUTF8 sıfır değilse) Http.sys kodu ANSI veya DBCS olarak çözmeyi dener; başarılı olmazsa UTF-8 dönüştürmeyi dener. 0
MaxBytesPerSend 65536 1-0xFFFFF (Bayt) Http.sys tarafından kullanılan TCP pencere boyutunu geçersiz kılar. Daha yüksek bir değer, yüksek bant genişliğine ve yüksek gecikme süresine sahip ağ ortamlarında daha yüksek indirme hızları sağlayabilir. 0
MaxConnections MAX_ULONG 1024 (1k) - 2031616 (2 MB) bağlantı Sürücüdeki hesaplamayı MaxConnections geçersiz kılar. Bu öncelikle bir bellek işlevidir. 1
MaxEndpoints 0 0 - 1024 İzin verilen en fazla geçerli uç nokta nesnesi sayısı. Varsayılan sıfır değeri, maksimum değerin kullanılabilir bellekten hesaplandığını gösterir. 1
MaxFieldLength 16384 64 - 65534 (64k - 2) bayt Her üst bilgi için bir üst sınır ayarlar. Bkz. MaxRequestBytes. Bu sınır, URL için yaklaşık 32k karaktere çevrilir. 1
MaxRequestBytes 16384 256 - 16777216 (16 MB) bayt İstek satırının ve üst bilgilerin toplam boyutu için üst sınırı belirler.
Varsayılan ayarı 16 KB'tır. Bu değer değerinden MaxFieldLengthMaxFieldLength küçükse, değer ayarlanır.
1
PercentUAllowed 1 Boolean Sıfır değilse, Http.sys istek URL'lerinde % uNNNN gösterimini kabul eder. 0
UrlSegmentMaxCount 255 0 - 16.383 segment URL yolu kesim sayısı üst sınırı. Sıfır ise, bir değerinin en büyük değeriyle ULONGsınırlanan sayıdır. 1
UriEnableCache 1 Boolean Sıfır değilse, Http.sys yanıtı ve parça önbelleği etkinleştirilir. 0
UriMaxUriBytes 262144 (bayt) 4096 (4k) - 16777216 (16 MB) bayt Bu değerden büyük yanıtlar çekirdek yanıt önbelleğinde önbelleğe alınmaz. 1
3
UriScavengerPeriod 120 (saniye) 10 - 0xFFFFFFFF saniye Önbellek leşleştireninin sıklığını belirler. saniye sayısı UriScavengerPeriod içinde erişilmeyen tüm yanıtlar veya parçalar boşaltılır. 1
2
UrlSegmentMaxLength 260 0 - 32.766 karakter URL yol kesimindeki karakter sayısı üst sınırı (URL'deki eğik çizgi arasındaki alan). Sıfır ise, bir değerinin en büyük değeriyle ULONGsınırlanan uzunluk olur. 1
DisableServerHeader 0 0 - 2 Bu anahtar, istemcilere gönderdiği yanıtlar için http yanıt üst bilgisi Sunucusu'nu ekleme konusunda http.sys nasıl davranacağını denetler. Varsayılan değer olan 0 değeri, uygulamanın http.sys için sağladığı üst bilgi değerini kullanır veya varsayılan değerini Microsoft-HTTPAPI/2.0 yanıt üst bilgisine ekler. 1 değeri, http.sys tarafından oluşturulan yanıtlar (400, 503 ve diğer durum kodlarıyla biten yanıtlar) için Sunucu üst bilgisini eklemez. 2 değeri, http.sys yanıta Sunucu üst bilgisi eklemesini engeller. Yanıtta bir Sunucu üst bilgisi varsa, kaldırılmaz, yoksa eklenmez. 0

IIS'de barındırılan Internet Server API (ISAPI) uygulamaları veya Ortak Ağ Geçidi Arabirimi (CGI) uygulamaları yanıt gönderdiğinde Internet Information Services'te (IIS) yavaş performansla karşılaşabilirsiniz. Bu sorunla karşılaşırsanız DWORD değerini kayıt defterine ekleyebilirsiniz MaxBufferedSendBytes .

Windows Server 2008 ve sonraki sürümlerinde, aşağıdaki kayıt defteri anahtarı altında aşağıdaki DWORD değerini de oluşturabilirsiniz:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTPFilter\Parameters

Kayıt defteri anahtarı Varsayılan değer Geçerli değer aralığı Kayıt defteri anahtarı işlevi UYARI kodu
CertChainCacheOnlyUrlRetrieval 1 0
1
Varsayılan olarak, IIS İstemci Sertifikalarını kullanacak şekilde yapılandırıldığında zincir doğrulama sırasında AIA ipuçlarına uyulmuyor. Bu davranış, performans ve güvenlik nedenleriyle gerçekleştirilir. Örneğin, bu davranış DoS saldırılarını önlemeye yardımcı olabilir. Ancak bu davranış, AIA alma gerektiğinde beklenmeyen sertifika reddedilmesine de neden olabilir. Bu davranışı geçersiz kılmak için DWORD parametresini CertChainCacheOnlyUrlRetrieval kayıt defteri anahtarı altında HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTPFilter\Parameters 0 (sıfır) olarak ayarlayabilirsiniz. Uygulanamaz

Uyarı kodları

  • 0: Risk yok.
  • 1: Bu kayıt defteri anahtarının değiştirilmesi tehlikeli kabul edilir. Bu anahtar, Http.sys daha fazla bellek kullanmasına neden olur ve kötü amaçlı saldırılara karşı güvenlik açığını artırabilir.
  • 2: Düşük bir değer önbelleğin daha sık boşaltılmasına neden olabilir. Bu davranış oluşursa, performansı etkileyebilir.
  • 3: Düşük bir değer statik içeriğin performansını etkileyebilir.

Kayıt defterinde yapılan değişiklikler, HTTP hizmetini yeniden başlatana kadar geçerli olmayacaktır. Ayrıca, ilgili IIS hizmetlerini yeniden başlatmanız gerekebilir.

HTTP hizmetini yeniden başlatmak için yazın ve tüm ilgili IIS hizmetlerini şu adımları izleyin:

  1. Başlat'ı seçin, Çalıştır'ı seçin, Cmd yazın ve ardından Tamam'ı seçin.

  2. Komut istemine net stop http yazın ve ardından Enter tuşuna basın.

  3. Komut istemine net start http yazın ve ardından Enter tuşuna basın.

  4. Komut istemine net stop iisadmin /y yazın ve ardından Enter tuşuna basın.

    Not

    IIS Yönetici Hizmeti hizmetine bağımlı tüm IIS hizmetleri de durdurulur. IIS Yönetim Hizmeti hizmetini durdurduğunuzda durdurulan IIS hizmetlerine dikkat edin. Sonraki adımda her hizmeti yeniden başlatacaksınız.

  5. 4. adımda durdurulan IIS hizmetlerini yeniden başlatın. Bunu yapmak için komut istemine yazın net start servicename ve Enter tuşuna basın. komutta servicename, yeniden başlatmak istediğiniz hizmetin adıdır. Örneğin, World Wide Web Yayımlama Hizmeti hizmetini yeniden başlatmak için yazın net start World Wide Web Publishing Serviceve Enter tuşuna basın.