2009-08-02 13 views
5

मेरे पास एक एएसपी.NET एप्लिकेशन है जो रनटाइम के दौरान वेब सर्वर पर फ़ाइलों को लिखने का प्रयास करता है। मेरे विकास पर्यावरण में, यह काम करता है।एएसपी.नेट + पथ तक पहुंच अस्वीकार कर दिया गया है

"Access to the path 'C:\Inetpub\wwwroot\MyWebApp\DirToWriteTo\' is denied." 

मेरे उत्पादन सर्वर एक विंडो सर्वर 2003 मशीन है: हालांकि, जब मैं यह उत्पादन सर्वर पर तैनात है, और मैं कोड निष्पादित, मैं एक त्रुटि है कि कहा गया है प्राप्त करते हैं। वेब एप्लिकेशन IUSR_TEMPLATE खाते के माध्यम से अनाम पहुंच की अनुमति देने के लिए सेट है।

मैं क्या गलत कर रहा हूं?

धन्यवाद!

उत्तर

1

सबसे संभावित समस्या यह है कि आपके अज्ञात उपयोगकर्ता के पास स्थान तक पहुंच पहुंच नहीं है।

मैं जो स्थान करूंगा वह उस स्थान के लिए web.config प्रविष्टि बनाना है जिसे आप लिखना चाहते हैं और उस कॉन्फ़िगरेशन कुंजी को अपनी लिखने योग्य निर्देशिका के रूप में उपयोग करें। यह आवश्यक होने पर, आपके उत्पादन सर्वर और आपकी विकास मशीन के लिए अलग कॉन्फ़िगरेशन की अनुमति देगा।

इसके बाद, बस निर्देशिका उपयोगकर्ता IUSER_TEMPLATE करने के लिए अपने विन्यास में परिभाषित के लिए लेखन पहुँच देने के लिए, या Thorarin के रूप में कहा नेटवर्क सेवा, जिस स्थिति में आप अपने Web.config में पहचान प्रतिरूपण सेट करना चाहिए ताकि आप कर सकते हैं कि उपयोगकर्ता निर्दिष्ट करें (जब तक आप ऐप पूल के माध्यम से उपयोगकर्ता को कॉन्फ़िगर नहीं करते)। इससे समस्या का हल निकलना चाहिए।

+1

केवल तभी 'Web.config' के पास '' अनुभाग में' <पहचान प्रतिरूपण = "सत्य" /> 'है। अन्यथा आवेदन पूल के लिए पहचान सेट का उपयोग किया जाता है। डिफ़ॉल्ट रूप से, यह * नेटवर्क सेवा * है (जिसमें बहुत सीमित पहुंच है) – Thorarin

+0

यह सच है। मैंने शुरुआत में इसके बारे में नहीं सोचा था। मैं इसे शामिल करने के लिए अपना जवाब अपडेट करूंगा। –

1

आप Windows 2008 या इसके बाद के संस्करण है, तो IIS_IUSRS पर लिखने की अनुमति देने का प्रयास करें।

(नेटवर्क सेवा भी अतीत में मेरे लिए काम किया है। से मैं क्या here पढ़ें, यह सर्वर ओएस पर निर्भर करता है।)

enter image description here

0

मेरे मामले में, दृश्य स्टूडियो 2015 बदल एक मौजूदा परियोजना की IIS AppPool उपयोगकर्ता को DefaultAppPool के डिफ़ॉल्ट में, जिसने मुझे अनुमति त्रुटियों, कॉन्फ़िगरेशन त्रुटियों, भूमिका प्रदाता त्रुटियों, और शून्य संदर्भ त्रुटियों को दिया। इसे खोजने के बाद और इसे एप्लिकेशन पूल पर वापस बदलने के बाद फ़ोल्डर अनुमतियां सेट की गईं, चीजें फिर से काम करना शुरू कर दीं।

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