<System.web> और <system.webServer> के बीच अंतर?


197

जब भी मुझे IIS7 के साथ ASP.NET के लिए हैंडलर या मॉड्यूल जोड़ना पड़ता है, तो निर्देश हमेशा मुझे इसे दो खंडों में शामिल करने के लिए कहते हैं: system.webऔर system.webserver

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

और इस:

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

इन दोनों वर्गों में क्या अंतर है?

इसके अलावा, अगर मैं इसे system.webअनुभाग में नहीं जोड़ता हूं, तो मेरा विज़ुअल स्टूडियो 2008 डीबगर भी सही तरीके से काम नहीं करता है।


2
इसके लिए एक बेहतर वर्तमान संदर्भ है: msdn.microsoft.com/en-us/library/46c5ddfy.aspx
शैनन

जवाबों:


157

System.web अनुभाग IIS 6.0 को कॉन्फ़िगर करने के लिए है, जबकि IIS 7.0 को कॉन्फ़िगर करने के लिए system.webserver संस्करण का उपयोग किया जाता है। IIS 7.0 में एक नया ASP.NET पाइपलाइन और कुछ कॉन्फ़िगरेशन अंतर शामिल हैं, इसलिए अतिरिक्त कॉन्फ़िगरेशन अनुभाग।

तथापि...

यदि आप केवल एकीकृत मोड में IIS 7.0 चला रहे हैं, तो आपको दोनों अनुभागों को हैंडलर जोड़ने की आवश्यकता नहीं होनी चाहिए। इसे system.web में जोड़ने के साथ ही IIS 7.0 क्लासिक मोड में काम करने के लिए एक कमबैक है, जब तक कि मैं गलत नहीं हूं। मैंने इस पर व्यापक परीक्षण नहीं किया है।

अधिक जानकारी के लिए http://msdn.microsoft.com/en-us/library/bb763179.aspx देखें ।


4
<HttpRuntime> जैसे सिस्टम के बारे में क्या कहा गया है, जो अभी भी हैं। लेकिन अभी भी IIS 7 इंटीग्रेटेड मोड पर फर्क पड़ता है?
स्कैलर्सन

38
System.web सेक्शन को system.webserver सेक्शन से अलग नहीं किया जाता है, बस विस्तारित किया जाता है।
क्रिस

IIS 8.5 पर मैंने पाया है कि httpCookiesसेटिंग system.webServer में उपलब्ध नहीं है, लेकिन अगर मैं एक system.web बनाऊं और इसे वहां रखूं तो यह काम करता है।
इबोरोब

44

पूर्व क्लासिक मोड के लिए है।

उत्तरार्द्ध एकीकृत पाइपलाइन मोड (IIS7 + में उपलब्ध) के लिए है।


मेरे अनुभव को देखते हुए, क्या यह लंबाई, स्पष्टता और वास्तविकता में बेहतर उत्तर है। पूर्व में क्लासिक मोड के अलावा, IIS एक्सप्रेस और अन्य सर्वर जो IIS 7. नहीं हैं, को जोड़ें
बेन ग्रिपका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.