वेब एप्लिकेशन प्रोजेक्ट […] IIS का उपयोग करने के लिए कॉन्फ़िगर किया गया है। वेब सर्वर […] नहीं मिला।


285

मेरे पास मेरी समाधान फ़ाइल में एक वेब प्रोजेक्ट है जो समाधान खोलने पर "अनुपलब्ध" है। जब मैं वेब प्रोजेक्ट पर राइट-क्लिक करता हूं और प्रोजेक्ट को फिर से लोड करता हूं, तो मुझे निम्न त्रुटि मिलती है:

The Web Application Project mycompany.myapp.mywebproject is configured to use IIS. The Web Server 'http://localhost/MyWebApp could not be found.

मैंने इस वेब एप्लिकेशन के लिए मैन्युअल रूप से वर्चुअल निर्देशिकाएं सेट नहीं की हैं।

सहकर्मियों के अनुसार, विज़ुअल स्टूडियो ने मुझे वर्चुअल निर्देशिकाएं बनाने के लिए संकेत दिया, लेकिन मुझे संकेत नहीं मिल रहा है।

मैंने अपने देव मशीन पर IIS स्थापित करने से पहले VS2010 स्थापित किया।

यहाँ मेरा विकास मशीन सेटअप है:

  • विंडोज 7 एंटरप्राइज
  • सर्विस पैक 1
  • 64 बिट ओएस
  • विजुअल स्टूडियो 2010 एंटरप्राइज सर्विस पैक 1
  • IIS संस्करण 7.5

जवाबों:


87

जब ऐसा होता है तो सबसे आसान उपाय यह है कि वर्चुअल निर्देशिका को मैन्युअल रूप से बनाया जाए।

सबसे पहले, आपको यह सुनिश्चित करने की आवश्यकता है कि आपके पास ASP.Net का सही संस्करण स्थापित है और आपने IIS एक्सटेंशन स्थापित किया है।

ऐसा करने के लिए, C: \ (Windows) \ Microsoft.NET \ फ्रेमवर्क (dotnetver) \ में प्रासंगिक .net संस्करण के फ़ोल्डर पर जाएं (अपने पीसी पर सही फ़ोल्डरों के लिए ब्रैकेट किए गए फ़ोल्डरों को प्रतिस्थापित करें) और इस कमांड को चलाएं।

aspnet_regiis.exe -i

अगले एक बार जो चल रहा है और समाप्त हो गया है, कभी-कभी चल रहा है

iisreset

कमांड लाइन से मदद मिलती है, कभी-कभी आपको इसकी आवश्यकता नहीं होती है।

इसके बाद, अपने IIS प्रबंधक पर जाएं और आपको लोकलहोस्ट वेबसाइट ढूंढें और एक फ़ोल्डर जोड़ें। अपने प्रोजेक्ट में उस फ़ोल्डर में ब्राउज़ करें जिसमें वास्तविक ASP.Net प्रोजेक्ट हो और उसे जोड़ें।

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

!! सुनिश्चित करें कि वर्चुअल निर्देशिका का नाम 'MyWebApp' है !!

अपने समाधान को पुनः लोड करें और इसे काम करना चाहिए।

कृपया सावधान रहें; यह एक प्रोग्रामिंग सवाल नहीं है (और वास्तव में यहां पोस्ट नहीं किया जाना चाहिए) लेकिन मैंने यह मार्गदर्शन पोस्ट किया है क्योंकि यह एक सामान्य समस्या है, लेकिन मैंने जो सलाह पोस्ट की है वह सामान्य है; मेरे द्वारा सूचीबद्ध आदेश सही हैं, लेकिन IIS में आपके द्वारा किए जाने वाले चरण अलग-अलग हो सकते हैं, यह आपके संस्करण और आपके खाते के विशेषाधिकारों पर निर्भर करता है।

सौभाग्य!


मैंने निर्देशों का पालन किया और निम्न त्रुटि हो रही है .. मैंने इस त्रुटि को शुरू करने के कारण अपनी आभासी निर्देशिका को हटा दिया। अनूठे प्रमुख गुण 'नाम' के साथ 'Telerik_Web_UI_WebResource_axd' सेट
-प्रैक्टिशनर

जब आप समाधान शुरू करते हैं, तो वह त्रुटि, IIS या विज़ुअल स्टूडियो क्या देता है?
रस क्लार्क

इसके अलावा, अपने नए asp.net प्रोजेक्ट के लिए web.config की जांच करें, इसके दो या अधिक सन्दर्भ हैं 'Telerik.WebResource.axd' इसे केवल एक की आवश्यकता है।
रस क्लार्क

मैंने web.config को चेक किया .. जब मैं आपत्तिजनक प्रविष्टि को हटाता हूं तो मुझे त्रुटि संदेश मिलता है कि हटाए गए प्रविष्टि की आवश्यकता है।
डॉटनेट-प्रैक्टिशनर

नई त्रुटि संदेश के लिए शीघ्र ही एक अलग प्रश्न पोस्ट करने के बारे में
डॉटनेट-प्रैक्टिशनर

523

चूंकि स्वीकृत उत्तर के लिए IIS प्रबंधक की आवश्यकता है, और IIS एक्सप्रेस में IIS प्रबंधक या कोई UI नहीं है, यहाँ आपके लिए IIS एक्सप्रेस उपयोगकर्ताओं का समाधान है (और बाकी सभी के लिए भी काम करना चाहिए):

जब आप Visual Studio खोलते हैं और त्रुटि संदेश मिलता है, तो प्रोजेक्ट समाधान एक्सप्लोरर पर राइट-क्लिक करें और "Edit {ProjectName} .croroal" चुनें।

प्रोजेक्ट फ़ाइल में, निम्न पंक्ति बदलें: फ़ाइल
<UseIIS>True</UseIIS>
को
<UseIIS>False</UseIIS>
सेव करने के लिए।

अब अपने प्रोजेक्ट को पुनः लोड करें।
किया हुआ।

फिर आप अपना प्रोजेक्ट खोल पाएंगे। यदि इस बिंदु पर, आप IIS का उपयोग करना चाहते हैं, तो बस अपने प्रोजेक्ट गुणों पर जाएं, "वेब" टैब पर क्लिक करें, और IIS का उपयोग करने के विकल्प का चयन करें। वहाँ बटन "वर्चुअल निर्देशिका बनाएँ" है। यह आपको बता सकता है कि आपको उस निर्देशिका को बनाने के लिए एक व्यवस्थापक के रूप में विज़ुअल स्टूडियो को चलाने की आवश्यकता है, इसलिए यदि आवश्यक हो तो ऐसा करें।


33
VS2010 में UseIIS csproj फ़ाइल में नहीं है, लेकिन .csproj.user फ़ाइल में
oleksa

2
मेरे मामले में मैं अभी भी IIS का उपयोग करना चाहता हूं इसलिए मैंने बस URL बदल दिया, पूरी तरह से धन्यवाद काम किया।
kjetilh

उन्नयन और आगे बढ़ने पर मुझे यह समस्या हुई। हालांकि यह मेरे लिए काम कर रहा है क्योंकि समाधान लोड नहीं हो रहा था इसलिए मैंने पाठ संपादक में csproj खोला। धन्यवाद डग।
कीरन

2
यह सही जवाब है। एक ही समय में IIS और IISExpress दोनों का उपयोग करने के लिए प्रोजेक्ट कॉन्फ़िगर किया गया है।
हारून रीड

2
VS2013 का उपयोग करते हुए, मैं समाधान पर राइट-क्लिक करने पर {ProjectName} .csproj संपादित नहीं देखता। मैंने फ़ाइल सिस्टम पर जाकर संपादन को पूरा किया और मैन्युअल रूप से .csproj फ़ाइल को संपादित किया। यह केवल पढ़ने के लिए था, इसलिए मुझे थोड़ा नृत्य करना पड़ा, लेकिन इसने काम किया।
अल लेलोपथ

222

प्रोजेक्ट फ़ोल्डर खोलें और {प्रोजेक्ट} .csproj.user हटाएं , फिर प्रोजेक्ट को Visual Studio पर पुनः लोड करें।


2
हमारी टीम में मैं अकेला था जो इस IIS त्रुटि को देख रहा था। जिस देव टीम के साथ मैं काम करता हूं, उसके पास स्रोत नियंत्रण से एक ही .csproj फ़ाइल थी, इसलिए ऊपर दिए गए अन्य समाधान मेरी समस्या नहीं थे। यह .csproj.user फ़ाइल का उल्लेख करता है जो मेरी स्थिति में इस त्रुटि का कारण बन रही थी। धन्यवाद!
मेरा स्टैक ओवरफ्लोथ

3
यह मेरे लिए और सब कुछ करने की कोशिश के बाद काम किया
डेविड

3
यह सही जवाब है। यह आपकी मशीन पर परियोजना के विन्यास के साथ एक समस्या को हल करता है (विशेषकर जब टीएफएस के साथ काम करना महत्वपूर्ण है)।
मार्कस

1
यदि आप एक कस्टम iisurl टैग सेट कर चुके हैं तो भी यह समाधान है, लेकिन प्रोजेक्ट अभी भी स्थानीय होस्ट <IISUrl> MachineName.domain: 12345 / </ IISUrl >
lsp

5
यह एक मेरे लिए काम किया। मेरे मामले में कोई <UseIIS> सेटिंग नहीं थी।
टेक्रग्रेशन

33

इस समाधान ने मेरे लिए काम किया: प्रोजेक्ट पर राइट क्लिक करें और संपादित करें चुनें और चित्र में नीचे दिखाए अनुसार निम्न कोड खोजें।

change the <UseIIS>True</UseIIS> to <UseIIS>False</UseIIS>

या

change the <IISUrl>http://example.com/</IISUrl> to <IISUrl>http://localhost/</IISUrl>

csproj स्क्रीनशॉट


30

मेरे लिए, मुझे .csproj फ़ाइल से इन दो पंक्तियों को हटाना पड़ा

<ProjectGuid>{3AA499DF-4A65-43B7-8965-D08A4C811834}</ProjectGuid>
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

मैंने केवल पहले एक को हटाने की कोशिश की, लेकिन यह पर्याप्त नहीं था।

EDIT: जैसा कि कई उपयोगकर्ताओं ने बताया है, यह आपके प्रोजेक्ट प्रकार को बदल सकता है या आपके स्रोत नियंत्रण कार्यक्रम के साथ गड़बड़ कर सकता है। मैं इन मुद्दों की जांच नहीं कर सकता क्योंकि यह एक स्कूल प्रोजेक्ट था जो मेरे पास नहीं है। कृपया यह प्रयास करते समय सावधान रहें। कम से कम आप जो भी हटाते हैं उसकी एक प्रति बनाएँ।


9
यह काम किया है और यह एक जवाब के रूप में चिह्नित किया जाना चाहिए। मैंने एसओ में सुझाए गए कई समाधानों की कोशिश की लेकिन मेरे अलावा किसी ने भी इसके लिए काम नहीं किया।
बोस_जेक

3
उपरोक्त सभी सुझावों को आज़माने के बाद, यह वही है जो वास्तव में मेरे लिए काम करता है। शुक्रिया मेरे दोस्त!
नोबल-सैवेज

2
यह प्रोजेक्ट प्रकार में परिवर्तन करता है इसलिए यह अब वेब एप्लिकेशन नहीं है।
ओराम

3
.Csproj फ़ाइल से <ProjectGuid> को निकालना एक अच्छा विचार नहीं है। परियोजना को लोड करने के लिए यह केवल हटाने के लिए पर्याप्त है <ProjectTypeGuids> जो कि एक बुरा विचार है क्योंकि यह परियोजना प्रकार को बदलता है, जैसा कि @Oram ने उल्लेख किया है। यह उत्तर अच्छा है यदि आप अपने परिवर्तन नहीं करना चाहते हैं, तो बस वीएस में कोड देखें।
एल्शेव

1
यह समाधान एक्सप्लोरर लोड त्रुटियों को हल करता है जो मुझे एक ठेकेदार द्वारा विकसित विज़ुअल स्टूडियो 2010 समाधान के साथ मिला था जिसे मैं 2013 में स्थानांतरित कर रहा हूं। समाधान फ़ाइल 2 परियोजनाएं हैं; एक वेब ऐप और एक वेब सेवा। मुझे लोड करने के लिए या तो नहीं मिल सकता था, इसलिए समाधान फ़ाइल खोलने का प्रयास करने के बाद समाधान एक्सप्लोरर केवल दो खाली फ़ोल्डर दिखा रहा था। एक बार जब मैंने सुझाए गए ProjectGuid और ProjectTypeGuids लाइनों का सुझाव दिया, तो मैं समाधान एक्सप्लोरर में इन परियोजनाओं की निर्भरता देख सकता था। मेरे लिए, यह एक कम जोखिम वाला उच्च वापसी विकल्प था क्योंकि मैं आसानी से इन परिवर्तनों को पूर्ववत कर सकता था। धन्यवाद!
जॉन

26

.Csproj या vbproj फ़ाइल संपादित करें। इन प्रविष्टियों को ढूंढें और प्रतिस्थापित करें

<UseIIS>true</UseIIS> by <UseIIS>false</UseIIS>
<UseIISExpress>true</UseIISExpress> by <UseIISExpress>false</UseIISExpress>

1
मुझे DevelopmentServerPort को 80 के अलावा किसी अन्य मूल्य में बदलना पड़ा।
यहोशू

1
और अगर आपको csproj फाइल में सेटिंग्स नहीं मिल रही हैं। .Csproj.user फ़ाइल खोलें और वहाँ करें।
देवझेरो

10

मेरे मामले में, यह समस्या टूटी हुई आईआईएस बाइंडिंग के कारण हुई। विशेष रूप से, मेरा 'http' बंधन हटा दिया गया था। इसे फिर से बनाने से समस्या ठीक हो गई।


मैंने एक बहुत ही समान समस्या का अनुभव किया। मेरा HTTP बाइंडिंग एक दिन अपने आप को बदलने के लिए लग रहा था -_- प्रोजेक्ट फ़ाइल सेटिंग <IISUrl>नहीं बदली गई थी (मेरी याददाश्त और मेरी पवित्रता की पुष्टि करने के लिए आपको SVN धन्यवाद) लेकिन किसी तरह iis बाइंडिंग थी। इसे ठीक किया और अनुमानित लोड अभी दूर।
पैट्रिक एम।

यह भी याद रखें कि अगर आपने किसी कारणवश टारगेट साइट के एसएनआई / होस्टनाम को बदल दिया है, तो जांच करना न भूलें। इससे मेरे मामले में त्रुटि हुई।
जौराला

5

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


5

इसने मेरे लिए काम किया: -
अपनी सभी IIS वेबसाइट्स को केवल लोकलहोस्ट (ऑल अनसाइनड) पर इंगित करें

यहां छवि विवरण दर्ज करें


5

यदि आप टीएफएस के माध्यम से जुड़े हुए हैं, तो अपना प्रोजेक्ट खोलें। CCroj.user फ़ाइल और जांच करें

<UseIISExpress>false</UseIISExpress>

और इसे सच में बदलें।

<UseIISExpress>true</UseIISExpress>

हालांकि मुझे लगता है कि यह वास्तविक समाधान की तुलना में समस्या के लिए एक अधिक समाधान है, इसे एक अंगूठा दिया क्योंकि इसने मेरी तत्काल चिंता का समाधान किया।
नंदुन

अच्छी तरह से काम किया :)
हम्माद साजिद

4

आप विशेषता UseIIS के मान को सही किए बिना प्रोजेक्ट लोड कर सकते हैं। बस नीचे दिए गए चरणों का पालन करें:

Mywebproject.csproj फ़ाइल में -

टैग हटाएं <IISUrl> http: // localhost / MyWebApp / </ IISUrl> और फ़ाइल को सहेजें। एप्लिकेशन स्वचालित रूप से इसे डिफ़ॉल्ट पोर्ट असाइन करेगा।


4

आपको विश्वास नहीं होगा कि, प्रशासक केstart रूप में दृश्य स्टूडियो

संदेश से स्पष्ट है

वेब सर्वर ' http: // localhost / MyWebApp ' नहीं मिल सका।

क्योंकि पाया नहीं जा सका it has no privileges to see it

तो प्रशासक केrestart रूप में बस दृश्य स्टूडियो


3

मेरे मामले में मैं http से https पर स्विच करना चाहता था, इसलिए मैंने http को IIS से हटा दिया था। मेरी .csproj.user फ़ाइल में पाया गया कि मेरे पास अभी भी है:

<IISUrl>http://localhost/</IISUrl>

इसलिए मैंने इसे बदल दिया:

<IISUrl>https://localhost/</IISUrl>


2

आपके लिए Win8 उपयोगकर्ता वहां हैं, यदि आप स्वीकृत उत्तर में दिए गए चरणों का पालन करते हैं, तो कंसोल आपको एक संदेश देता है, जिसमें कहा गया है कि "आप इस कमांड को निष्पादित करने के लिए कमांड-लाइन का उपयोग नहीं करेंगे" (पैराफ़्रासिंग)। इसके बजाय, नियंत्रण कक्ष (या विंडोज + आर> appwiz.cpl) के माध्यम से कार्यक्रमों और सुविधाओं तक पहुंचें, 'विंडोज सुविधाओं को चालू या बंद करें' पर क्लिक करें, और सुनिश्चित करें कि आपके पास निम्न स्थापित हैं:

Internet Information Services
  > World Wide Web Services
    > Application Development Features
      > ASP.NET 4.5

यह अन्य विकल्पों का एक गुच्छा भी जाँच करेगा। जैसे ही मैंने इन सुविधाओं को स्थापित किया, और उन्नत अनुमतियों के साथ VS2012 चलाया, मैं अपने ऐप को सफलतापूर्वक लॉन्च करने में सक्षम था।


2

मेरे साथ ऐसा तब होता है जब मैंने .csproj फ़ाइल से एक प्रोजेक्ट खोलने की कोशिश की थी, लेकिन मैं वीएस से प्रोजेक्ट को खोलकर इसे खत्म कर देता हूं:

फ़ाइल> ओपन> वेब साइट

और निर्देशिका का चयन करें जिसमें मेरी परियोजना शामिल है।


1

मेरी भी यही त्रुटि थी। मैंने सोचा था कि सब कुछ सही ढंग से सेटअप किया गया था, लेकिन मुझे पता चला कि एक चीज़ गायब थी: मैंने अपने प्रोजेक्ट के लिए जो होस्ट नाम इस्तेमाल किया था, वह अभी तक resolvable नहीं था।

चूंकि मेरा ऐप होस्ट नाम से वर्तमान क्लाइंट का नाम निर्धारित करता है, इसलिए मैंने clientname.mysuperapp.localविकास के लिए होस्ट नाम का उपयोग किया । जब मैंने अपनी hostsफ़ाइल में विकास होस्ट नाम जोड़ा , तो परियोजना फिर से लोड करने योग्य थी। जाहिर है, मुझे वैसे भी यह करना था, लेकिन मैंने यह नहीं सोचा है कि वीएस परियोजना को लोड करने से पहले होस्ट नाम की जांच करता है।


1

जाँच करें कि क्या IIS एक्सप्रेस स्थापित है। यदि IIS एक्सप्रेस अनुपलब्ध है, तो Visual Studio सेटिंग को छोड़ सकता है <UseIISExpress>false</UseIISExpress>और फिर भी एक्सप्रेस के लिए देख सकता है।


1

मेरे मामले में, सुनिश्चित करें कि आपके पास "डिफ़ॉल्ट" वेबसाइट है


1

मेरे मामले में, IIS में "डिफ़ॉल्ट वेब साइट" में पोर्टहॉस्ट 80 पर पोर्टहॉस्ट के लिए कोई बंधन नहीं था। आपके पास .csproj फ़ाइल में जो कुछ भी है, उसके लिए आपके पास बाइंडिंग होनी चाहिए।


1

नीचे दिए गए लिंक से डाउनलोड करने के बाद मैंने बस IIS एक्सप्रेस को फिर से इंस्टॉल करके इसे ठीक किया:

https://www.microsoft.com/en-us/download/confirmation.aspx?id=48264


1
यह प्रश्न का उत्तर प्रदान नहीं करता है। एक बार आपके पास पर्याप्त प्रतिष्ठा होने के बाद आप किसी भी पोस्ट पर टिप्पणी कर पाएंगे ; इसके बजाय, ऐसे उत्तर प्रदान करें जिन्हें पूछने वाले से स्पष्टीकरण की आवश्यकता न हो । - समीक्षा से
FluffyKitten

@FluffyKitten ओपी के रूप में मेरे पास एक ही त्रुटि थी, मैंने अन्य सभी उत्तरों की कोशिश की और IIS एक्सप्रेस को फिर से स्थापित करने के लिए कुछ भी काम नहीं किया। इसलिए मेरा मानना ​​है कि यह ओपी के सवाल का जवाब है। IIS पुनर्स्थापित करें।
मैथ्यू

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

अगर कुछ और काम नहीं करता है, तो यह एक अंतिम उपाय है - और Ajay2707 के अनुसार, कुछ गरीब आत्मा के लिए काम करने वाले अन्य उत्तरों में से किसी के लिए भी क्षमता है- तो मुझे लगता है कि यह उत्तर उपयोगी हो सकता है। जब आप कुछ लोगों के लिए काम करते हैं तो केवल यही हो सकता है कि आप किसी उत्तर को निम्न गुणवत्ता के रूप में कैसे नामित कर सकते हैं? मैं आपको Ajay2707 का समर्थन करता हूं। समुदाय में योगदान देने के लिए समय निकालने के लिए धन्यवाद।
nardnob

Inb4 इस वार्तालाप को निम्न गुणवत्ता के रूप में स्थानांतरित / हटा दिया गया है। चिरायु ला प्रतिरोध !!
nardnob

0

मेरे मामले में, url ने csproj में संदर्भित किया फ़ाइल गलत था।

इसके साथ उपसर्ग करने की आवश्यकता थी www के ।

मैंने बदलाव किए, फ़ाइल को सहेजा और परियोजना को ठीक लोड किया।


0

मैं इस मुद्दे में भाग गया जब <ProjectTypeGuids>.csproj फ़ाइल में तत्व में यूनिट टेस्ट प्रोजेक्ट GUID शामिल था {3AC096D0-A1C2-E12C-1390-A8335801FDAB}:।

इसे हटाने से समस्याओं के बिना प्रोजेक्ट लोड हो गया।


0

DNN उपयोगकर्ताओं के लिए मेरा मुद्दा मुझे पोर्ट 80 पर dnndev.me के लिए एक बंधन की आवश्यकता थी। मेरे पास कई इंस्टॉल हैं जो विभिन्न बंदरगाहों पर चलते हैं और वीएस को आवश्यकता है कि पोर्ट 80 पर मौजूद विशेष रूप से Url (मेरी तरह 86 नहीं)।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.