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

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

Orijinal ü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ümlerde, 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)

Not

Varsayılan ayarlar dışındaki ayarları kullanarak kayıt defteri değerlerini oluşturur ve yapılandırırken ortaya çıkabilecek riskler hakkında bilgi için Uyarı kodları bölümüne bakın.

Bu makale ileri düzey kullanıcılara yöneliktir ve kayıt defteri ve kayıt defteri değiştirildiğinde ilgili 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ı dikkatle uyguladığınızdan emin olun. Ek koruma için kayıt defterini değiştirmeden önce yedeklemeyi unutmayın. 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 Boole Sıfır değilse, Http.sys istek URL'lerinde U+0000 - U+001F ve U+007F - U+009F aralıklarına çözülen onaltılık çıkışlı karakterleri 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 ve 503 hata sayısını azaltabilir. 0
EnableNonUTF8 1 Boole Sıfırsa, 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 Boole 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ırsa (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ürmesini 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ılar Sürücüdeki hesaplamayı MaxConnections geçersiz kılar. Bu öncelikli olarak 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, BIR 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 Boole Sıfır değilse, Http.sys istek URL'lerinde % uNNNN gösterimini kabul eder. 0
UrlSegmentMaxCount 255 0 - 16.383 segment En fazla URL yolu kesimi sayısı. Sıfırsa, bir değerinin en büyük değeriyle ULONGsınırlanmış sayıdır. 1
UriEnableCache 1 Boole 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 ölçeklendiricisinin sıklığını belirler. Saniye sayısı UriScavengerPeriod içinde erişilmeyen yanıt veya parça boşaltılır. 1
2
UrlSegmentMaxLength 260 0 - 32.766 karakter URL yolu 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, http.sys istemcilere gönderdiği yanıtlar için http yanıt üst bilgisi Sunucusu'nu ekleme konusunda 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 nedenlerinden kaynaklanır. Örneğin, bu davranış DoS saldırılarını önlemeye yardımcı olabilir. Ancak bu davranış, AIA alma gerektiğinde beklenmeyen sertifika reddine de yol açabilir. 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. Geçerli değil

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 aşağıdaki adımları izleyin:

  1. Başlat'ı seçin, Çalıştır'ı seçin, Cmd yazın ve 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önetici 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.