2012-03-08 17 views
11

मैं ASP.Net MVC 4 पाने के लिए IIS6 पर काम कर रहा कोशिश कर रहा हूँ और हमेशा मज़ा निर्देशिका लिस्टिंग निषेध त्रुटि में चला रहा हूँ में ASP.Net MVC 4 एप्लिकेशन चल रहा है पर इनकार किया लिस्टिंग।निर्देशिका आईआईएस 6 वर्चुअल निर्देशिका

इससे पहले कि आप extensionless यूआरएल के बारे में पोस्ट करना प्रारंभ करने के लिए और कैसे मैं Haacked ब्लॉग पोस्ट पढ़ने की जरूरत है .. मेरे पास है :) तो साथ इस तरह से यहां से बाहर सेटअप है:

मैं एक नया वेब साइट बनाया है और इसे एएसपी.Net 4.0 का उपयोग करने के लिए कॉन्फ़िगर किया गया। मैं क्योंकि मौजूदा डिफ़ॉल्ट वेब साइट ASP.Net 2.0 के लिए कॉन्फ़िगर किया गया है और इस extensionless यूआरएल टूट जाता है यह करने के लिए किया था। नई वेब साइट के तहत मैं इस संसाधन चयनित विकल्पों पढ़ें/लिखें/प्रवेश करें vists/सूचकांक के साथ एक वर्चुअल निर्देशिका बनाया है और स्क्रिप्ट के लिए सेट अनुमतियाँ निष्पादित।

मैं सत्यापित किया है कि ASP.Net v4.0.30319 वेब सेवा एक्सटेंशन सूची में है और अनुमति दी है। मैंने यह भी सत्यापित किया है कि .xd मैपिंग मेरी वर्चुअल निर्देशिका मैपिंग कॉन्फ़िगरेशन में सही ढंग से सेटअप है।

मैं कर रहा हूँ पूरी तरह से और पूरी तरह से स्टम्प्ड ..

सामान्य ज्ञान का एक पक्ष बिट के रूप में मैं इस वेब साइट मेरे ASP.Net 4 वेब एप्लिकेशन पर सीधे ओर इशारा करते हुए के साथ काम किया था लेकिन हम इस एक आभासी माध्यम से किया जाना करने की जरूरत है इसके बजाय निर्देशिका। तथ्य यह है कि मेरे पास यह काम करने का मतलब यह होना चाहिए कि EnableExtensionlessUrl रजिस्ट्री सेटिंग कोई समस्या नहीं है।

उत्तर

22

मैं अनियंत्रित विकल्प के साथ aspnet_isapi.dll को एक ही समस्या का सामना करना पड़ा और यह मंजूरी दे दी हो गया जब मैं "वाइल्डकार्ड आवेदन मानचित्रण" जोड़ा (.*) "सत्यापित करें कि फ़ाइल मौजूद है"

Application -> Properties -> Directory -> Configuration -> Mappings -> Insert -> Browse to C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll -> Uncheck "Verify that file exists" -> Ok

अब साइट के बिना ठीक खोल रहा है कोई परेशानी।

+0

शायद एक बेवकूफ सवाल है, लेकिन जब मैं फ़ील्ड को खाली छोड़ देता हूं तो मुझे 'अमान्य एक्सटेंशन मार्कअप' मिल रहा है। तारांकन * जंगली कार्ड भी कोशिश की, लेकिन इसे स्वीकार नहीं किया। –

+0

मैं .mvc एक्सटेंशन जोड़ा गया और फिर उस विस्तार पर वाइल्डकार्ड आवेदन नक्शा गयी। हालांकि मेरे मार्ग .mvc का उपयोग नहीं करते हैं, फिर भी "एक्सटेंशन एक्सटेंशन मैपिंग जोड़ें/संपादित करें" संवाद में एक्सटेंशन बॉक्स में मान्य प्रविष्टि दर्ज करने की आवश्यकता थी। – voam

+0

यह भी मेरे लिए काम किया, एक MVC 3 आवेदन के साथ। लेकिन यह क्यों काम करता है? और इस मैपिंग को जोड़कर मैंने और क्या समस्याएं पेश की हैं? – ALEXintlsos

2

इसी मुद्दे: हम एक IIS6 बॉक्स, के रूप में वर्णित सब कुछ सेट पर MVC4 स्थापित है, और एक ही त्रुटि मिली:

Directory Listing Denied 
This Virtual Directory does not allow contents to be listed. 

हमारे लिए, अंतिम ठीक web.config को UrlRoutingModule जोड़ने के लिए किया गया था:

<add name="UrlRoutingModule" 
     type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> 

कौन समझ में आता है, लेकिन मैं क्यों हम स्पष्ट रूप से इसे जोड़ने के लिए की जरूरत है और अन्य नहीं पता नहीं है। (हम शेयरपॉइंट के तहत एक निर्देशिका में चल रहे हैं, शायद संबंधित ...)

+0

किस नोड के तहत '' जाओ? – sports

+1

'' –

+0

धन्यवाद स्कॉट, कृपया अपने मूल उत्तर को संपादित करने पर विचार करें –

संबंधित मुद्दे