<System.web> ve <system.webServer> arasındaki fark?


197

IIS7 ile ASP.NET için bir işleyici veya modül eklemem gerektiğinde, talimatlar her zaman bana iki bölüme dahil etmemi söyler: system.webve system.webserver.

<system.web>
    <httpHandlers>
    </httpHandlers>
    <httpModules>
    </httpModules>
</system.web>

Ve bu:

<system.webServer>
    <modules>
    </modules>
    <handlers>
    </handlers>
</system.webServer>

Bu iki bölüm arasındaki fark nedir?

Ayrıca, system.webbölüme eklemezsem , Visual Studio 2008 hata ayıklayıcım da düzgün çalışmıyor.


2
bunun için daha iyi bir referans: msdn.microsoft.com/en-us/library/46c5ddfy.aspx
Shannon

Yanıtlar:


157

System.web bölümü IIS 6.0'ı yapılandırırken, system.webserver sürümü IIS 7.0'ı yapılandırmak için kullanılır. IIS 7.0, yeni bir ASP.NET ardışık düzenini ve bazı yapılandırma farklılıklarını, dolayısıyla fazladan yapılandırma bölümlerini içerir.

Ancak...

IIS 7.0'ı yalnızca tümleşik modda çalıştırıyorsanız, işleyicileri her iki bölüme de eklemeniz gerekmez. Yanılmıyorsam system.web'e eklemek klasik modda çalışan IIS 7.0 için bir geri dönüş. Bu konuda kapsamlı testler yapmadım.

Daha fazla bilgi için http://msdn.microsoft.com/tr-tr/library/bb763179.aspx adresine bakın .


4
<httpRuntime> gibi system.web dosyasına yerleştirilen ancak yine de IIS 7 Tümleşik modunda bir fark yaratan özniteliklere ne dersiniz?
sclarson

39
System.web bölümü, system.webserver bölümü tarafından değiştirilmemiştir, yalnızca genişletilmiştir.
Chris

IIS 8.5'te httpCookiesayarın system.webServer'da kullanılamadığını, ancak bir system.web oluşturup oraya koyarsam çalıştığını fark ettim.
Eborbob

44

Birincisi Klasik Mod içindir.

İkincisi, Tümleşik Boru Hattı Modu içindir (IIS7 + 'da mevcuttur).


Deneyimlerime göre, bu uzunluk, netlik ve gerçeklik açısından daha iyi bir cevap. Önceki modda klasik moda ek olarak, IIS express ve IIS 7 olmayan diğer sunucuları ekleyin.
Ben Gripka
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.