2014-04-06 7 views
10

मेरा एमवीसी 4 एप्लीकेशन मेरे स्थानीय कंप्यूटर पर ठीक काम करता है।सीएसएस फ़ाइलें सर्वर पर नहीं दिख रही हैं - एएसपी.नेट एमवीसी बंडल त्रुटि। 403 - निषिद्ध: एक्सेस अस्वीकार कर दिया गया है

हालांकि, प्रकाशित होने के बाद सीएसएस फ़ाइलें काम नहीं कर रही हैं (वेबसाइट के लेआउट को प्रभावित नहीं कर रही हैं)।

मैं सीएसएस देख सकता हूं कि फ़ाइलें सर्वर पर हैं।

जब मैं स्रोत कोड को देखो, मैं

<link href="/Content/css?v=fxCdHAOgPDvcROxkMfEwGQggO9uCfzckN3PaN8BOIzI1" rel="stylesheet"/> 

देख सकते हैं जहां अपने स्थानीय कंप्यूटर पर के रूप में, स्रोत कोड पर स्रोत कोड को ध्यान में रखते

रूप में दिखाता है
<link href="/Content/css/myFile.css" rel="stylesheet"/> 
<link href="/Content/css/myFile02.css" rel="stylesheet"/> 

तो, सर्वर, मैंने Content/css?v=fxCdHAOgPDvcROxkMfEwGQggO9uCfzckN3PaN8BOIzI1 पर क्लिक किया और ब्राउज़र ने मुझे 403 पर ले जाया - निषिद्ध: एक्सेस अस्वीकार कर दी गई है।

मैं, BunldeConfig.cs वर्ग

public class BundleConfig 
    { 
     // For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkId=254725 
     public static void RegisterBundles(BundleCollection bundles) 
     { 
      bundles.Add(new ScriptBundle("~/bundles/javascript").Include(
         "~/Scripts/1.9.1.js", 
         "~/Scripts/jTools.js", 
         "~/Scripts/script.js" 
         )); 

      bundles.Add(new StyleBundle("~/Content/css").Include(
       "~/Content/Css/website.css", 
       "~/Content/Css/banner.css", 
       "~/Content/Css/reusable.css", 
       "~/Content/Css/lists.css", 
       "~/Content/Css/tooltip.css", 
       "~/Content/Css/overlay.css" 
       )); 


     } 
    } 

मेरा प्रश्न है साथ सीएसएस फ़ाइलें जोड़ने हूँ यह सोचते हैं इस सर्वर (यह हाल ही में जब तक ठीक काम कर रहा है) के साथ एक आईटी मुद्दा नहीं है कि वहाँ कुछ है मेरे कोड के साथ गलत है?

+1

[एएसपी.नेट एमवीसी फ्रेमवर्क 4.5 सीएसएस बंडल का संभावित डुप्लिकेट होस्टिंग पर काम नहीं करता है] (http://stackoverflow.com/questions/12081255/asp-net-mvc-framework-4-5-css-bundles -जो-काम-पर-ऑन-द-होस्टिंग) –

उत्तर

21

आपकी समस्या यह है कि आप, new StyleBundle("~/Content/css") में एक बंडल उपनाम के रूप में उपयोग कर रहे हैं ~/Content/cssजबकि इस मार्ग वास्तव में मौजूद है।

तो जब आप अनुरोध कर रहे हैं <link href="/Content/css?...> आप अनिवार्य रूप से एक निर्देशिका लिस्टिंग के लिए पूछ रहे हैं और उस वर्जित है।

, कुछ का उपयोग कर new StyleBundle("~/Content/styles") तरह की कोशिश करो।

नोट: आप उपनाम के रूप में ~/Content/styles की तरह कुछ का उपयोग करते हैं, तो आप अपनी .css फाइलों में सापेक्ष URL के साथ मुद्दों हो सकता है। यह अजीब लग सकता है, लेकिन आप बेहतर कुछ ~/Content/Css/someAlias

+1

श्वास - मैं वास्तव में लगभग 2 साल पहले यह जानता था ... जब आप चीजों का उपयोग करना बंद करते हैं तो यह भूल जाता है कि आप क्या भूल जाते हैं। धन्यवाद, पूरी तरह हल किया गया – MyDaftQuestions

+1

आपका स्वागत है। भविष्य के संदर्भ के लिए एक छोटा सा सुझाव। यदि आप अपना शीर्षक बदलकर 'एएसपी.नेट एमवीसी बंडल त्रुटि' में बदलते हैं तो यह दूसरों के लिए अधिक उपयोगी होगा। 403 - निषिद्ध: एक्सेस अस्वीकार कर दी गई है। – lalibi

+0

दो घंटों के अंत में +1 –

1

अपनी रूट web.config फ़ाइल के <system.web> के अनुभाग में बेहतर तरीके से उपयोग कर सकते हैं, डीबग मोड शामिल नहीं है। जब आप अपना आवेदन प्रकाशित करते हैं तो इसमें डीबग विशेषता शामिल नहीं होती है। तो आप निम्नलिखित कोड शामिल हैं:

<compilation debug="true" targetFramework="4.5"><compilation targetFramework="4.5"> की बजाय अपनी web.config फ़ाइल में।

अधिक जानकारी के लिए आप This Link पालन कर सकते हैं।

+1

यह लक्षण हल करता है लेकिन कारण को ठीक नहीं करता है। सही उत्तर के लिए @ लालिबी के उत्तर का संदर्भ लें। –

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