c# - वेब अनुप्रयोग परियोजना[...] आईआईएस का उपयोग करने के लिए कॉन्फ़िगर किया गया है। वेब सर्वर[...] नहीं मिला।




asp.net iis (16)

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

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

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

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

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

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

मैंने अपनी देव मशीन पर आईआईएस स्थापित करने से पहले वीएस -2010 स्थापित किया।

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

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

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

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

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


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

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

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


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

जब आप विजुअल स्टूडियो खोलते हैं और त्रुटि संदेश प्राप्त करते हैं, तो प्रोजेक्ट समाधान एक्सप्लोरर पर राइट-क्लिक करें और "संपादित करें {ProjectName} .csproj" चुनें

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

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

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


जांचें कि आईआईएस एक्सप्रेस स्थापित है या नहीं। यदि आईआईएस एक्सप्रेस गुम है, तो विजुअल स्टूडियो सेटिंग <UseIISExpress>false</UseIISExpress> और अभी भी एक्सप्रेस की तलाश कर सकता है।


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


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

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


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

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

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

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

मेरे मामले में, csproj फ़ाइल में संदर्भित यूआरएल गलत था।

इसे www के साथ prefixed होने की जरूरत है

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


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


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


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

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

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



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

<UseIISExpress>false</UseIISExpress>

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

<UseIISExpress>true</UseIISExpress>

यह मेरे साथ होता है जब मैंने .csproj फ़ाइल से कोई प्रोजेक्ट खोलने का प्रयास किया, लेकिन मैं इसे VS से प्रोजेक्ट खोलकर प्राप्त कर रहा हूं:

फ़ाइल> खोलें> वेब साइट

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


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

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

या

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





iis