2010-04-21 10 views
8

अभिवादनकोई शैली नहीं/asp.Net MVC 2 आवेदन पर छवियों

मैं अपने एएसपी MVC आवेदन के साथ एक छोटे से समस्या है। मेरे स्थानीय विकास सर्वर पर सबकुछ ठीक काम करता है लेकिन जब मैं एप्लिकेशन को आईआईएस 7.0 सर्वर पर प्रकाशित करने का प्रयास करता हूं तो यह बिना शैलियों/मार्कअप/छवियों के सादे पृष्ठों को प्रदर्शित करता है।

मैं/सामग्री/सबफ़ोल्डर में उन सभी चीजें डाल लेकिन जब मैं उत्पादन सर्वर पर उस फ़ोल्डर तक पहुँचने का प्रयास यह सिर्फ मुझे एक 404 नहीं मिला त्रुटि देता है।

मैं नेट 4.0 के साथ आईआईएस सर्वर की स्थापना की और यहां पर तैनाती गाइड का पालन किया: http://www.asp.net/learn/mvc/tutorial-08-cs.aspx

सभी दृश्य/नियंत्रक/कक्षाएं ठीक काम करने के लिए लग रहे हैं, केवल एक चीज है जो ऐसा नहीं करता सामग्री सबफ़ोल्डर है और मैं नहीं देख सकता क्यों।

किसी को भी एक सुझाव मिला है जिसे मैं अनदेखा कर सकता था या किसी को भी उस समस्या को पता है?

+0

यदि आप सीधे अपने ब्राउज़र से सीएसएस फ़ाइलों पर नेविगेट करने का प्रयास करते हैं तो क्या होता है? –

+0

404'd भी ... – xenolf

+0

आप अपनी स्थिर फाइलों का संदर्भ कैसे देते हैं? अपेक्षाकृत या बिल्कुल? आईआईएस पर आपका एप्लिकेशन कैसे कॉन्फ़िगर किया गया है? रूट वेबसाइट या अन्य साइट के भीतर एक एप्लिकेशन फ़ोल्डर के रूप में? –

उत्तर

0

चेक अपनी सामग्री फ़ोल्डरों के गुणों ... अगर वे प्रतिलिपि स्थानीय स्तर पर 'किसी कारण से नहीं कर रहे हैं देखते हैं। ../../Content/Styles/style.css:

+1

बस इसकी जांच की गई ... सबकुछ ठीक से कॉपी हो गया है ... ऐसा लगता है कि रूटिंग मौजूदा फाइलों के लिए गड़बड़ हो जाती है। मैं डिफ़ॉल्ट रूटिंग का उपयोग कर रहा हूं जो वास्तव में इसका ख्याल रखना चाहिए, या क्या मैं गलत हूं? – xenolf

2

इसका कारण यह है कि आप शायद src पर एक निश्चित पथ का उपयोग कर रहे हैं, की तरह है। एमवीसी में आपको यूआरएल हेल्पर का उपयोग करना चाहिए: Url.Content("~/Content/Styles/style.css")

यूआरएल सहायक का उपयोग करके आपको कोई समस्या नहीं होनी चाहिए।

10

मुझे एक ही समस्या थी, लेकिन मुझे कारण मिला कि यह सामग्री फ़ोल्डर पर प्रमाणीकरण क्यों मजबूर कर रहा था।

जब कोई उपयोगकर्ता अभी तक लॉग इन नहीं है, तो उसे अनाम प्रमाणीकरण के रूप में वर्गीकृत किया जाता है। IIS7 में (जो मैं उपयोग कर रहा हूं, अनुमान लगा रहा हूं कि यह आईआईएस 6 में समान है) आपको सुविधाओं के दृश्य में प्रमाणीकरण विंडो खोलने की आवश्यकता है। फिर बेनामी प्रमाणीकरण को संपादित करें, अपनी एप्लिकेशन पूल पहचान या डिफ़ॉल्ट एक का उपयोग करने के लिए, बस यह सुनिश्चित करें कि उपयोगकर्ता को उस फ़ोल्डर में पढ़ने की अनुमति है।

यह मेरे लिए तय है, उम्मीद है कि यह आपके लिए काम करता है।

+0

धन्यवाद कॉनर, जिसने मेरी समस्या हल की – arame3333

+0

धन्यवाद, सही समाधान! – Tomas

1

इस रात के साथ पूरे रात मेरे बालों को खींच रहा था।

W2K8, MVC2, .NET 4.0, और आईआईएस 7 पर

यकीन है कि बनाया गया है कि IIS_IUSRS रूट फ़ोल्डर लेकिन अभी भी कोई जाने के लिए पूरे अधिकार था (VS 2010 का प्रयोग करके) - जे एस, चित्र अभी भी पहुँचा नहीं जा रहा सीएसएस, और देखा - - .js, .css, और .jpg के लिए परिभाषित MIME प्रकार

विशेषताएं में साइट के लिए देखें: पेज ....

और फिर .... प्रतिपादन इतना आसान में!

मीठे!

पेज। मेरी 1 MVC अनुप्रयोग - और मुझे लगता है कि मैं इसे पसंद कर रहा हूँ ...

3

ठीक है, मैं इस परियोजना निर्देशिका के लिए IIS_IUSR s को जोड़ा गया है और एक ही समस्या दिखाई दी:
सीएसएस लोड नहीं होगा और कुछ भी नहीं सामग्री फ़ोल्डर से ।
लेकिन यह Unable to start debugging on the web server समस्या का समाधान किया।
फिर, मैंने उसी फ़ोल्डर में IUSR जोड़ा और समस्या को ठीक किया।अब, मैं छवियों, सीएसएस शैलियों और सभी चीजें देख सकते हैं।

+0

जब मैंने अपना wwwroot फॉल्डर (किसी अन्य उपयोगकर्ता के लिए) साझा किया तो उसने आईयूएसआर सेटिंग हटा दी! इस त्रुटि पर कुछ घंटे खो दिया। धन्यवाद। –

0

वह फ़ोल्डर जो आपकी वर्चुअल निर्देशिका उपयोगकर्ता "सभी" पढ़ने गुणों को इंगित कर रहा है।

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