2011-08-04 18 views
17

पर आता है मुझे एएसपी.नेट एमवीसी साइट के साथ समस्या है।आईआईएस पर एएसपी.नेट एमवीसी स्थिर फ़ाइल हैंडलर

  1. ASP.NET MVC 2
  2. ASP.NET 4 एकीकृत पाइप लाइन
  3. विंडोज वेब सर्वर पर 7.5 IIS 2008 R2

जब भी मैं एक बनाने:

ये विवरण हैं ऐप के लिए अनुरोध मुझे "HTTP त्रुटि 404.0 - नहीं मिला" -error और विस्तृत त्रुटि जानकारी दिखाती है कि यह स्थैतिक फ़ाइल हैंडलर है जो त्रुटि की रिपोर्ट करता है:

  • मॉड्यूल: आईआईएस वेब कोर
  • अधिसूचना: MapRequestHandler
  • हैंडलर: StaticFile
  • त्रुटि कोड: 0x80070002

जिसका अर्थ है कि अनुरोध कभी नहीं MVC में प्रवेश किया ढेर।

मुझे ध्यान रखना चाहिए कि आईआईएस पहले से ही एक एप पूल पर एएसपी.नेट एमवीसी 3 और एएसपी.एन्ट 2 एप पूल पर एक एमवीसी 2 परोसता है। तो यह एएसपी.नेट 4 ऐप पूल पर कॉम्बो एएसपी.नेट 2 है जो मुझे सिरदर्द दे रहा है।

असल में मैं एएसपी.NET एमवीसी 2 से एएसपी.NET 2.0 ऐप पूल पर एएसपी.NET एमवीसी 2 पर एएसपी.NET 4.0 ऐप पूल पर ऐप को अपग्रेड करना चाहता हूं।

तो कोई विचार?

उत्तर

-7

तो मुझे त्रुटि मिली। रूट में डिफ़ॉल्ट दस्तावेज़ पर एक बायां था, जो एकीकृत पाइपलाइन का उपयोग कर ऐप्स के लिए आवश्यक नहीं है। ग्लोबल.स्कैक्स और रूट पंजीकरण में कुछ बदलाव भी निस्संदेह थे, लेकिन उसके बाद यह काम करता था।

+2

आप समाधान पर विस्तार कर सकता है? उदाहरण के लिए global.asax में क्या परिवर्तन? –

+2

कुछ और जानकारी प्रदान करें –

+0

समाधान वास्तव में समस्या से जुड़ा हुआ प्रतीत नहीं होता है। – jakejgordon

24

मैं तुम्हें आपकी समस्या का समाधान देखते हैं, लेकिन किसी को भी googling के लिए:

मैं इस मुद्दे था और मेरे मामले में मैं सिर्फ आईआईएस के साथ ASP.NET 4 रजिस्टर करने के लिए की जरूरत है। मैं अन्य मुद्दों को ठीक करने के लिए जाल को हटा रहा था और फिर से जोड़ रहा था और बस ऐसा करने के लिए भूल गया। आदेश है कि मेरे लिए काम किया था:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis -i

आपका अपना .net संस्करण अलग हो सकता है, खासकर यदि आप भविष्य में कर रहे हैं, इसलिए ऊपर पथ बिल्कुल सही नहीं हो सकता।

+1

मुझे लगता है कि संस्करण संख्या यहां महत्वपूर्ण है। मैंने कोशिश की, लेकिन गलत .net फ्रेमवर्क संस्करण में। बस इसे नीचे डालने पर, बस उस स्थिति में किसी को याद आती है। यह मेरे लिए काम किया। – snakepitbean

13

मैं जब मैं के बाद आईआईएस स्थापित विजुअल स्टूडियो, आदि स्थापित करने

मैं अपने वेब बदलकर इस समस्या को ठीक करने में सक्षम था एक ही समस्या थी।कॉन्फ़िग फ़ाइल, runAllManagedModulesForAllRequests="true"<modules> टैग को जोड़ने:

<system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"> 
     ... 
    </modules> 
</system.webServer> 

(अधिक जानकारी के लिए/यहाँ से नकल: http://www.west-wind.com/weblog/posts/2011/Mar/27/ASPNET-Routing-not-working-on-IIS-70)

+1

और यह अचानक काम करना शुरू कर देता है। जादू मैं कहता हूँ! – Edgar

+1

यह विकल्प सेट नहीं किया जाना चाहिए क्योंकि प्रबंधित हैंडलरों को भेजी जाने वाली सभी स्थैतिक फ़ाइलों सहित _all_ अनुरोधों में परिणाम और इसके परिणामस्वरूप स्मृति और CPU उपयोग में वृद्धि हुई है। कम यातायात साइटों पर ध्यान नहीं दिया जा सकता है, लेकिन एक बार आईआईएस प्रति सेकंड मेगाबाइट्स, एचटीएमएल, जेएस, सीएसएस और अन्य स्थिर सामग्री की सेवा करेगा, आपका सर्वर क्रैश हो जाएगा। – user3285954

+0

@ user3285954 की टिप्पणी के लिए बस एक विवाद, बढ़ी हुई स्मृति और सीपीयू उपयोग लगभग हमेशा नगण्य है। मैंने कुछ सुंदर उच्च ट्रैफिक साइटों पर काम किया है, और इस सेटिंग ने कभी मेरे लिए कोई समस्या नहीं पैदा की है। मैं इसे पहले कोशिश करने का सुझाव दूंगा, और देखें कि क्या यह वास्तव में एक प्रदर्शन समस्या पैदा करता है; यह शायद नहीं होगा। – Ryan

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