Utworzenie katalogu wirtualnego nie powiodło się z powodu błędu

89

Nie mogę rozwiązać tego problemu

wprowadź opis obrazu tutaj

Proponuję zmienić c:\Windows\System32\drivers\etc\hostsplik i dodać po

# localhost name resolution is handled within DNS itself.

następna linia:

127.0.0.1       mysite.dev

ale to nie pomaga. Jakieś sugestie?

Występuje błąd, gdy próbuję otworzyć projekt witryny internetowej w Microsoft Visual Studio 2012.

Dmytro
źródło
Jest to drugi lub trzeci link do google, który uzyskałem szukając rozwiązania w internecie. Nie tego potrzebuję.
Dmytro

Odpowiedzi:

167

Najczęściej, przynajmniej w moim przypadku, dzieje się tak, gdy *.csproj.userplik znajduje się w katalogu projektu i ma <UseIISExpress>true</UseIISExpress>w nim.

Alternatywnie, jak wspomniał Zachary Cutler , możesz też po prostu: zamknąć Visual Studio, usunąć *.csproj.userplik i ponownie otworzyć Visual Studio . Zmusi to VS do odbudowania pliku.

pim
źródło
1
to nie działa dla mnie, po aktualizacji vs2017 15.7.1 mam ten problem.
Marsen Lin
Dziękuję bardzo!
Reuben Tanner
2
To mi nie pomogło. Usunąłem .vsfolder. usunięte *.csproj.useri nadal daje ten sam błąd.
Zapnologica
1
to też działało dla mnie, właśnie usunąłem plik [myproj] .csproj.user i został załadowany - to było w VS2019 - działającym w trybie administratora
Mark
33

Znalazłem już rozwiązanie. Po prostu musiałem edytować C:\Users\Administrator\Documents\IISExpress\config\applicationhost.configplik, dodając moją witrynę do <sites>węzła.

Dmytro
źródło
W przypadku, gdy to nie jest odpowiedź dla Ciebie i jeśli znajdziesz się w mojej sytuacji, usunąłem katalog .vs, aby wyczyścić pamięć podręczną, i nie zauważyłem, że program Visual Studio zmienił moją domyślną konfigurację kompilacji na automatycznie wygenerowaną skonfigurowany do używania IISExpress. Więc jeśli miałeś projekt, który działał dobrze, a następnie przestał się ładować, zasugerowałbym, zanim zrobisz cokolwiek innego, aby sprawdzić konfigurację kompilacji (czego oczywiście nie udało mi się zrobić)
saminpa
Ups, chociaż mój poprzedni „pomocny” komentarz był trafny, nie był on główną przyczyną tajemniczego komunikatu o błędzie. Oznaczałoby to fakt, że automatycznie utworzony ponownie folder .vs odziedziczył szyfrowanie NTFS. Powrót do normalnego działania bez konieczności edytowania pliku projektu po odszyfrowaniu tego folderu.
saminpa
Działa nawet po 6 latach. Mam ten problem z najnowszą wersją vs2017. Ale rozwiązałem to, korzystając z powyższych informacji.
Awais,
Kiedy używa się lokalnego, applicaionhost.configa kiedy tego w folderze rozwiązania?
Zapnologica
19

Możesz zdecydować się na lokalną instalację usług IIS i edycję kilku tagów w pliku .csproj. Otwórz swój plik csproj i przejdź do sekcji, <VisualStudio>a następnie znajdź tag, <UseIIS>True</UseIIS> który musi być ustawiony jako prawda, a następnie przejdź do tagu: <IISUrl>i ustaw adres URL, pod którym aplikacja będzie hostowana do testowania:

<VisualStudio>
      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
          <AutoAssignPort>False</AutoAssignPort>
          <DevelopmentServerPort></DevelopmentServerPort>
          <DevelopmentServerVPath>/</DevelopmentServerVPath>
          **<IISUrl>http://localhost/myWebSiteAppSample</IISUrl>**
          <NTLMAuthentication>False</NTLMAuthentication>
          <UseCustomServer>False</UseCustomServer>
          <CustomServerUrl>
          </CustomServerUrl>
          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>

I to jest. Teraz możesz normalnie załadować swój projekt.

willyMon
źródło
Zabawne, to jest odpowiedź na mój przypadek.
coffekid
3
Uwaga: **w pliku nie powinny znajdować się gwiazdki. Oczywiście.
ErikE
16

Problem polegałby na tym, że konfiguracja projektu miałaby zostać wykonana w lokalnych usługach IIS, a określony adres URL nie istnieje.

Istnieją opcje, które możesz zrobić, aby rozwiązać problem.

Opcja 1 : (użyj IIS Express)

1.) Otwórz plik .csproj projektu internetowego jako XAML lub w notatniku.

2.) Znajdź te właściwości i ustaw je zgodnie ze swoimi preferencjami.

UseIIS = false

UseIISExpress = true

i to wszystko.

Opcja 2 : (użyj lokalnych usług IIS)

Wykonaj czynności opisane w opcji 1, ale zmień następujące właściwości.

UseIIS = true

IISUrl = https: // localhost

UseIISExpress = false

pampi
źródło
Opcja 1 nie działa
Metin Atalay
Opcja 2 zadziałała dla mnie, wystarczyło ustawić UseIIS = true
Joshlo
Opcja 2
zadziałała
9

Problem można rozwiązać, usuwając folder o nazwie .vs w katalogu projektu.

To rozwiązuje problem, ponieważ podczas otwierania projektu po usunięciu pliku .vs tworzy ten sam folder z konfiguracją podfolderu i folder z nazwą projektu.

Folder konfiguracyjny applicationhost zawiera niezbędne ustawienia wymagane do pomyślnego uruchomienia projektu.

Ashran Haider
źródło
6

Po prostu przeszedłem do katalogu wskazanego w błędzie i zmieniłem nazwę applicationhost.config i uruchomiłem ponownie, a VS utworzył nowy plik i działał dobrze.

pat capozzi
źródło
2
  • Próbowałem kilka metod wymienionych w odpowiedziach, ale co ostatecznie pracował dla mnie była zamiana <IISUrl>z .csprojo <CustomServerUrl>.

Edytować :

  • Powyższe nie rozwiązało głównej przyczyny problemu. Jeśli jednak ostatnio wykonałeś aktualizację systemu Windows, być może to może być przyczyną problemu. Spróbuj wykonać netsh http add iplisten 0.0.0.0i zobacz, czy to rozwiązuje problem.

Mam nadzieję, że to pomoże komuś, kto wciąż szuka sposobu.

Huzaim
źródło
1
Ze wszystkich rzeczy (i mam na myśli WSZYSTKIE), to ( <CustomServerUrl>) jest tym, który ostatecznie załatwił mi sprawę. Dzięki wielkie!
Ash
1

Nie wiem dlaczego, bo mój applicationhost.configplik całkowicie zniknął z mojego pliku C:\Users\Administrator\Documents\IISExpress\config\ folderze.

Kopiuj / wklej C:\inetpub\history\applicationhost.config do tego folderu wydawało się rozwiązać problem.

Mam pomysł stąd .

Daniel Szabo
źródło
W moim przypadku plik został uszkodzony. więc usunąłem go i zastąpiłem plikiem applicationhost.config znalezionym podczas wyszukiwania w systemie. Nie mam uprawnień administratora, więc nie mogę uzyskać dostępu do inetpub \ history. Myślę, że Visual Studio zawsze oczekuje tego pliku konfiguracyjnego, ale potem, mimo że wielokrotnie usuwałem plik applicationhost.config z lokalizacji IISExpress \ config, VS nadal go tworzył. Wygląda na to, że czasami ustawienia ulegają uszkodzeniu, ale gdy są wbudowane w odpowiednie ustawienia, VS sam zajmuje się wszystkimi ustawieniami.
kumar chandraketu
1
  1. Włącz funkcje systemu Windows „Internetowe usługi informacyjne” w panelu sterowania.
  2. Otwórz plik „.csproj” i znajdź
  3. Zmodyfikuj tę linię zgodnie ze swoimi wymaganiami. http: // localhost: 777 /
  4. Otwórz projekt / rozwiązanie teraz
  5. Jeśli ponowne załadowanie nie powiodło się, kliknij rozwiązanie prawym przyciskiem myszy i wybierz opcję „Wczytaj ponownie projekt”.
Vernie Namca
źródło
1

Wiem, że jest to prawdopodobnie rzadkie zjawisko, ale pomyślałem, że umieściłem to tutaj:

Mój csprojplik był ustawiony na „tylko do odczytu” (nie pytaj mnie, jak sobie z tym poradziłem), ale po wyłączeniu dostępu „tylko do odczytu” wszystko było w porządku. (VS2017)

Andy
źródło
0

Miałem ten sam problem z powodu zmiany hasła sieciowego. Zmieniłem hasło logowania do NetExtendor, ale muszę zalogować się do laptopa ze starym hasłem.

Spróbuj wykonać poniższe czynności, aby rozwiązać ten problem:

zaloguj się do komputera za pomocą dowolnego hasła zaloguj się do VPN z dowolnym hasłem działa ctl-alt-del, aby zablokować komputer, a następnie użyj nowego hasła, aby go odblokować

U mnie zadziałało :-)

Dzięki!

Rinki Barsainya
źródło
0

Nie dokładnie ten sam błąd, ale doprowadzono mnie do tej odpowiedzi, ponieważ pasowała pierwsza połowa błędu. Twój plik applicationhost.config może być po prostu tylko do odczytu. Zdjęcie tego rozwiązało za mnie błąd. Ten błąd wywołuje jednak plik, więc powinieneś być w stanie go łatwo znaleźć.

Leland Daniel
źródło
0

Mój problem dotyczył programu Windows 10 Defender. W przeszłości wydałem pozwolenie na usługi IIS, ale wydaje się, że teraz je ignoruje. Przyjrzę się temu później, ale na razie wyłączyłem kontrolowany dostęp do folderów i zadziałało.

Steve Greene
źródło
0

Chciałem otworzyć istniejący projekt Visual Studio 2017 w VS 2019 i napotkałem ten sam problem. Uważam, że jest to problem związany z wersją. Rozwiązanie jest następujące: utwórz nowy projekt w nowszym VS i skopiuj kody ze starszego VS.

Kousik Patra
źródło
Witamy w SO! W pytaniu nie ma wzmianki o jakichkolwiek zmianach w wersji VS. Wysyłając odpowiedź, sprawdź, czy odpowiadasz na pytanie. Jeśli nie, po prostu utwórz pytanie dotyczące tego problemu i odpowiedz sobie, aby pomóc społeczności.
David García Bodego
0

Spróbuj odszyfrować plik applicationhost.config. To zadziałało dla mnie.

Fran
źródło
-1

Oto kroki, aby to naprawić:

  1. Idź tam, gdzie jest twój plik .csproj. Zwykle jest to jeden katalog poniżej rozwiązania (.sln)
  2. Kliknij prawym przyciskiem myszy i otwórz w edytorze tekstu (notatniku)
  3. Znajdź tag IISUrl i zamień jego zawartość na http: // localhost: (YourPortNumber)
  4. Zapisz i załaduj ponownie swój projekt!
Hudson Nascimento
źródło