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 MaxFieldLength MaxFieldLength 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 ULONG sı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 ULONG sı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:
Başlat'ı seçin, Çalıştır'ı seçin, Cmd yazın ve tamam'ı seçin.
Komut istemine
net stop http
yazın ve ardından Enter tuşuna basın.Komut istemine
net start http
yazın ve ardından Enter tuşuna basın.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.
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ınnet start World Wide Web Publishing Service
ve Enter tuşuna basın.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin