asp.net mvc - HTTP त्रुटि 500.1 9 और त्रुटि कोड: 0x80070021




asp.net-mvc iis (11)

आपका web.config वर्णन करता है कि आप फॉर्म प्रमाणीकरण का उपयोग कर रहे हैं - सुनिश्चित करें कि आप आईआईएस में चल रही वेबसाइट के लिए प्रमाणीकरण मेनू के तहत फॉर्म प्रमाणीकरण सक्षम करें और IIS में अनाम प्रमाणीकरण अक्षम करें।

मेरे पास विजुअल स्टूडियो 2013 द्वारा निर्मित एक साधारण वेबएपीआई है। जब मैं इसे VS13 से चलाता हूं तो यह अच्छी तरह से काम करता है लेकिन जब मैं स्थानीय आईआईएस में प्रोजेक्ट की प्रतिलिपि बनाता हूं तो यह मुझे निम्न त्रुटि देता है।

HTTP त्रुटि 500.19 - आंतरिक सर्वर त्रुटि अनुरोधित पृष्ठ तक पहुंचा नहीं जा सकता क्योंकि पृष्ठ के लिए संबंधित कॉन्फ़िगरेशन डेटा अमान्य है।

विस्तृत त्रुटि जानकारी:

मॉड्यूल आईआईएस वेब कोर

अधिसूचना BeginRequest

हैंडलर अभी तक निर्धारित नहीं है

त्रुटि कोड 0x80070021

कॉन्फ़िगर त्रुटि इस कॉन्फ़िगरेशन अनुभाग का उपयोग इस पथ पर नहीं किया जा सकता है। यह तब होता है जब अनुभाग अभिभावक स्तर पर बंद हो जाता है। लॉकिंग या तो डिफ़ॉल्ट रूप से है (overrideModeDefault = "Deny"), या ओवरराइड मोड = "अस्वीकार करें" या विरासत अनुमतिऑवर्राइड = "झूठी" के साथ एक स्थान टैग द्वारा स्पष्ट रूप से सेट करें।

कॉन्फ़िगर फ़ाइल \? \ C: \ inetpub \ wwwroot \ APITeslin \ web.config

कॉन्फ़िगर स्रोत:

36:   <system.webServer>  
37:     <handlers>  
38:       <remove name="ExtensionlessUrlHandler-Integrated-4.0" />

कृपया <staticContent /> लाइन और इसे web.config से मिटा दें।


चूंकि त्रुटि व्यभिचार करती है - "यह तब होता है जब अनुभाग अभिभावक स्तर पर बंद हो जाता है"। अनुभाग को अनलॉक करने के लिए आप appcmd.exe उपयोग कर सकते हैं और निम्न आदेश निष्पादित कर सकते हैं:

%windir%\system32\inetsrv\appcmd.exe unlock config -section:system.webServer/handlers -commitpath:apphost

सेक्शन लॉकिंग के बारे में अधिक जानकारी के लिए और माता-पिता कॉन्फ़िगरेशन संदर्भ आईआईएस दस्तावेज़ों का संदर्भ क्या है।


ठीक उसी त्रुटि को मिला और इस प्रश्न पर आया। जैसा कि @ स्पेसबिसन ने टिप्पणियों में उल्लेख किया है, यह उत्तर समाधान का वर्णन करता है - https://.com/a/12867753/404099 । मैंने इसे बहुत देर से देखा और यह कुछ कदम याद करता है। इसी से मेरा काम बना है:

विंडोज सर्वर 2012, आईआईएस 8.5 । अन्य संस्करणों के लिए भी काम करना चाहिए।

  • सर्वर मैनेजर पर जाएं, भूमिकाएं और विशेषताओं को जोड़ें पर क्लिक करें
  • भूमिका अनुभाग में चुनें: वेब सर्वर
    • सुरक्षा उपधारा के तहत सबकुछ चुनें (मैंने डाइजेस्ट, आईपी प्रतिबंध और यूआरएल प्रमाणीकरण को छोड़ दिया है क्योंकि हम उनका उपयोग नहीं करते हैं)
    • आवेदन विकास के तहत .NET एक्सटेंसिबिलिटी 4.5, एएसपी.नेट 4.5 और दोनों आईएसएपीआई प्रविष्टियां चुनें
  • विशेषताएं अनुभाग में चुनें: नेट 3.5, .NET 4.5, एएसपी.नेट 4.5
  • वेब सर्वर अनुभाग में चुनें: वेब सर्वर (सभी), प्रबंधन उपकरण (आईआईएस प्रबंधन कंसोल और प्रबंधन सेवा), विंडोज प्रमाणीकरण - यदि आप इसका उपयोग कर रहे हैं

मुझे भी एक ही समस्या हो रही थी लेकिन मस्तिष्क के बाद आईआईएस और Google के साथ कई घंटों तक हमला हुआ। मुझे समाधान मिला। यह त्रुटि इसलिए है क्योंकि IIS applicationHost.config में कुछ सेटिंग्स अक्षम हैं।

समाधान के लिए नीचे दिए गए कदम हैं:

  1. C:\Windows\System32\inetsrv\config\applicationHost.config और नोटपैड में खोलें
  2. में मौजूद निम्न कुंजी मान बदलें

    • <section name="handlers" overrideModeDefault="Deny" /> इस मान को "अस्वीकार करें" से "अनुमति दें" में बदलें

    • <section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" /> इस मान को "अस्वीकार करें" से "अनुमति दें" में बदलें

यह मेरे लिए काम किया।


मेरे मामले में, आईआईएस यूआरएल रिवाइट मॉड्यूल के लिए नियम थे लेकिन मेरे पास उस मॉड्यूल को स्थापित नहीं किया गया था। यदि आपके पास कोई मॉड्यूल शामिल है लेकिन स्थापित नहीं है तो आपको अपना web.config जांचना चाहिए।


मैंने इसे निम्नलिखित करके हल किया:

WebServer(ISS)->WebServer->Application Development
add .NET Extensibility 3.5
add .NET Extensibility 4.5
add ASP.NET 4.5
add ISAPI Extensions
add ISAPI Filters


यदि आप पहली बार उस कंप्यूटर पर आईआईएस चला रहे हैं, तो आपको एएसपी.नेट आईआईएस पंजीकरण उपकरण (aspnet_regiis.exe) चलाने का प्रयास करना चाहिए।

यहां ऐसा करने का तरीका बताया गया है: यदि आप .NET Framework v4 का उपयोग कर रहे हैं, व्यवस्थापक के रूप में ओपन कमांड प्रॉम्प्ट का उपयोग कर रहे हैं, और निर्देशिका को अपने .net फ्रेमवर्क बेस फ़ोल्डर में बदलकर उपयोग कर रहे हैं:

CD C:\Windows\Microsoft.NET\Framework\v4.0.30319

या, यदि आप 64 बिट कंप्यूटर का उपयोग कर रहे हैं, तो इसका उपयोग करें:

CD C:\Windows\Microsoft.NET\Framework64\v4.0.30319

जब आपने उपयुक्त निर्देशिका में सफलतापूर्वक नेविगेट किया है, तो एएसपी.नेट आईआईएस पंजीकरण उपकरण का उपयोग करके निष्पादित करें:

aspnet_regiis -i

यदि आप एक अलग .NET फ्रेमवर्क संस्करण का उपयोग कर रहे हैं, तो उचित फ़ोल्डर नाम के साथ v4.0.30319 को प्रतिस्थापित करें।

उम्मीद है की यह मदद करेगा।


विंडोज 8.1 पर, आईआईएस 8.5 मेरे लिए समाधान नियंत्रण कक्ष से 4.5 पंजीकृत करना था:

कार्यक्रम और विशेषताएं> विंडोज़ सुविधाओं को चालू या बंद करें> सूचना सूचना सेवाएं> वर्ल्ड वाइड वेब सेवाएं> एप्लिकेशन विकास सुविधाएं> एएसपी.NET 4.5 का चयन करें

ओके पर क्लिक करें।


विंडोज सर्वर पर .NET कोर ऐप्स के लिए (मेरे मामले में 2012 आईआईएस 10 के साथ) यह .NET कोर विंडोज सर्वर होस्टिंग बंडल ( link ) स्थापित करने के बाद काम किया।


हमारे मामले में, हम कुछ दिनों से इस त्रुटि के साथ संघर्ष कर रहे थे। यह पता चला है कि नियंत्रण कक्ष, प्रोग्राम में, विंडोज़ सुविधाओं को चालू या बंद करें।

हमने इंटरनेट इन्फॉर्मेशन सर्विसेज, वर्ल्ड वाइड वेब सर्विसेज, एप्लीकेशन डेवलपमेंट फीचर्स का चयन किया और वहां हम अपने विकास पर्यावरण से जुड़े सुविधाओं के सेट की जांच करते हैं। उदाहरण के लिए: एएसपी.नेट 4.6। .NET एक्सटेंसिबिलिटी 4.6, आदि

यह काम करता हैं!





iis-8