asp.net mvc - 401 अनधिकृत: अमान्य प्रमाण-पत्रों के कारण एक्सेस अस्वीकार कर दी गई है




asp.net-mvc iis (7)

जब मैंने एमवीसी फ़ोल्डरों के साथ एक खाली परियोजना बनाई और तब सर्वर को एप्लिकेशन को तैनात किया तो मुझे इस त्रुटि का सामना करना पड़ा। मेरा मुद्दा यह था कि मैंने Web.config में प्रमाणीकरण को परिभाषित नहीं किया है, इसलिए मुझे बस इतना करना था कि यह लाइन system.web टैग में जोड़ दी गई हो।

<system.web>
    <authentication mode="None"/>
</system.web>

मैं एमवीसी 4 आवेदन को तैनात करने के लिए आईआईएस एक्सप्रेस का उपयोग कर रहा हूं। यह वेबसाइट पूरी तरह से उसी कंप्यूटर पर चलती है। लेकिन लैन में यह मुझे त्रुटि 401 देता है।

<authentication mode="Forms">
    <forms loginUrl="~/" slidingExpiration="true" timeout="20">
    </forms>
</authentication>

घर नियंत्रक में

[HttpPost]
[AllowAnonymous]        
public ActionResult Index(LoginModel model, string returnUrl)
{
}

मैं व्यवस्थापक मोड में कमांड प्रॉम्प्ट से आईआईएस सर्वर शुरू कर रहा हूं। आईआईएस त्रुटि 401 के अनुरोध के जवाब में है।

कोई सुराग?


मुझे आईआईएस 8.5 के तहत एक ही समस्या का सामना करना पड़ा। मेरे लिए एक कामकाजी समाधान आईआईएस को अलग त्रुटियों को प्रदर्शित करने के लिए बदल रहा था। Sna2stha से जवाब देखें। लेकिन मुझे लगता है कि उत्पादन वातावरण में ब्राउज़रों को विस्तृत त्रुटि संदेश अग्रेषित करना एक अच्छा विचार नहीं है। मैंने httpErrors-section में मौजूदा रीस्पॉन्स विशेषता को जोड़ा / बदल दिया है, इसलिए आईआईएस ने किसी भी मौजूदा Asp.net प्रतिक्रिया को संभाला नहीं है:

 <httpErrors existingResponse="PassThrough" />

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


मुझे इसका एक पुराना सवाल है, लेकिन यह मेरी खोजों में आया। हाल ही में बनाया गया एक एमवीसी अनुप्रयोग के लिए एक समान मुद्दा था, पहली बार तैनात किया गया था, और प्रमाणीकरण तंत्र पूरी तरह से बाहर नहीं किया गया था।

यह मेरे मामले में एक आईआईएस सेटिंग नहीं था, यह एक नियंत्रक था जो [AllowAnonymous] सजाया नहीं गया था। मैं एक layout.Action / Html.Action का उपयोग लेआउट.cshtml में कर रहा था और उपयोगकर्ता को अनधिकृत किया गया था। तो लेआउट ने एक अनधिकृत संदर्भ में एक प्रमाणीकृत कार्रवाई को लोड करने का प्रयास किया।

एक बार जब मैंने अनुमति देने के लिए कार्रवाई को अपडेट किया, तो समस्या दूर हो गई, और यही कारण है कि मुझे इसका कारण बन गया

उम्मीद है कि यह किसी की मदद करता है।


मुझे इसी तरह का मुद्दा सामना करना पड़ा।

फ़ोल्डर साझा किया गया था और अधिकृत उपयोगकर्ता अनुमति प्रदान की गई थी, जिसने मेरी समस्या हल की।


मेरे मामले में,
मेरा आवेदन MVC में विकसित किया गया है और मेरे गृह नियंत्रक वर्ग को [Authorize] सजाया गया था जो इस मुद्दे का कारण बन रहा था।
तो मैंने इसे हटा दिया है क्योंकि मेरे आवेदन को किसी प्रमाणीकरण की आवश्यकता नहीं है।


यदि आप आईआईएस 7 का उपयोग कर रहे हैं तो ऐसा कुछ करें:

  1. अपनी साइट का चयन करें।
  2. त्रुटि पृष्ठों पर क्लिक करें।
  3. फीचर सेटिंग्स संपादित करें।
  4. विस्तृत त्रुटियों का चयन करें।

का आनंद लें।


सुनिश्चित करें कि आपने आईआईएस पर अनाम प्रमाणीकरण सक्षम किया है:





form-authentication