Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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)
Not
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:
Başlat'ı seçin, Çalıştır'ı seçin, Cmd yazın ve ardından Tamam'ı seçin.
Komut istemine
net stop httpyazın ve ardından Enter tuşuna basın.Komut istemine
net start httpyazın ve ardından Enter tuşuna basın.Komut istemine
net stop iisadmin /yyazı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.
4. adımda durdurulan IIS hizmetlerini yeniden başlatın. Bunu yapmak için komut istemine yazın
net start servicenameve 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 Serviceve Enter tuşuna basın.