Pembuatan direktori virtual gagal dengan kesalahan

89

Saya tidak bisa menyelesaikan masalah ini

masukkan deskripsi gambar di sini

Saya sarankan saya harus mengubah c:\Windows\System32\drivers\etc\hostsfile dan menambahkan setelahnya

# localhost name resolution is handled within DNS itself.

baris berikutnya:

127.0.0.1       mysite.dev

tapi itu tidak membantu. Ada saran?

Kesalahan terjadi ketika saya mencoba membuka proyek situs web di Microsoft Visual Studio 2012.

Dmytro
sumber
Ini adalah tautan google kedua atau ketiga, saya dapatkan saat mencari solusi di Internet. Bukan itu yang saya butuhkan.
Dmytro

Jawaban:

167

Lebih sering daripada tidak, setidaknya dalam kasus saya, ini terjadi ketika sebuah *.csproj.userfile ada di direktori proyek dan ada <UseIISExpress>true</UseIISExpress>di dalamnya.

Sebagai alternatif, seperti yang disebutkan oleh Zachary Cutler Anda juga dapat: menutup Visual Studio, menghapus *.csproj.userfile dan membuka kembali Visual Studio . Ini akan memaksa VS untuk membangun kembali file.

pim
sumber
1
ini tidak berfungsi untuk saya, setelah pembaruan vs2017 15.7.1, saya mendapat masalah ini.
Marsen Lin
Terima kasih banyak!
Reuben Tanner
2
Ini tidak berhasil untuk saya. Saya telah menghapus .vsfolder. dihapus *.csproj.userdan masih memberikan kesalahan yang sama.
Zapnologica
1
ini juga bekerja untuk saya, saya baru saja menghapus file [myproj] .csproj.user dan dimuat - ini ada di VS2019 - berjalan dalam mode admin
Tandai
33

Saya sudah menemukan solusinya. Saya hanya perlu mengedit C:\Users\Administrator\Documents\IISExpress\config\applicationhost.configfile, dengan menambahkan situs saya ke <sites>node.

Dmytro
sumber
Jika ini bukan jawaban untuk Anda dan Jika Anda berada dalam situasi saya, saya menghapus direktori .vs untuk membersihkan cache dan tidak memperhatikan bahwa Visual Studio telah mengubah konfigurasi build default saya menjadi konfigurasi yang dibuat secara otomatis. dikonfigurasi untuk menggunakan IISExpress. Jadi jika Anda memiliki proyek yang berfungsi dengan baik dan kemudian berhenti memuat, saya sarankan sebelum Anda melakukan hal lain untuk memeriksa konfigurasi build (yang tentu saja gagal saya lakukan)
saminpa
Ups, meskipun komentar 'membantu' saya sebelumnya akurat, itu bukanlah penyebab utama dari pesan kesalahan samar. Itu akan menjadi fakta bahwa folder .vs yang dibuat ulang secara otomatis mewarisi enkripsi NTFS. Kembali normal tanpa perlu mengedit file proyek setelah mendekripsi folder itu.
saminpa
Bekerja bahkan setelah 6 tahun. Saya mendapat masalah ini dengan vs2017 versi terbaru. Tapi menyelesaikannya menggunakan info di atas.
Menunggu
Kapan seseorang menggunakan lokal applicaionhost.configvs yang ada di folder solusi?
Zapnologica
19

Anda dapat memilih untuk menginstal IIS secara lokal dan mengedit beberapa tag pada File .csproj. Buka file csproj Anda dan buka bagian <VisualStudio>lalu temukan tag <UseIIS>True</UseIIS> yang harus disetel sebagai true, lalu buka tag: <IISUrl>dan siapkan dengan alamat URL tempat aplikasi akan dihosting untuk pengujian:

<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>

Dan itu adalah. Sekarang Anda dapat memuat proyek Anda secara normal.

willyMon
sumber
Lucu, inilah jawaban untuk kasus saya.
coffekid
3
Dengan catatan: **tanda bintang tidak boleh ada di file. Tentu saja.
ErikE
16

Masalahnya adalah pengaturan proyek Anda akan dijalankan di IIS lokal dan URL yang ditentukan tidak ada.

Ada opsi yang dapat Anda lakukan untuk memperbaiki masalah tersebut.

Opsi 1 : (Gunakan IIS Express)

1.) Buka file .csproj proyek web Anda sebagai XAML atau di notepad.

2.) Temukan properti ini dan atur sesuai dengan preferensi Anda.

UseIIS = false

UseIISExpress = true

dan hanya itu.

Opsi 2 : (Gunakan IIS lokal)

Ikuti langkah opsi 1 tetapi ubah properti berikut.

UseIIS = true

IISUrl = https: // localhost

UseIISExpress = false

pampi
sumber
Opsi 1 tidak Bekerja
Metin Atalay
Opsi 2 berhasil untuk saya, hanya harus mengatur UseIIS = true
Joshlo
Opsi 2 Berhasil :)
Senura Dissanayake
9

Masalah ini dapat diperbaiki dengan menghapus folder bernama .vs di direktori proyek.

Ini menyelesaikan masalah karena saat membuka proyek setelah menghapus file .vs, ini membuat folder yang sama dengan konfigurasi subfolder dan folder dengan nama proyek.

Folder config applicationhost berisi pengaturan yang diperlukan untuk menjalankan proyek dengan sukses.

Ashran Haider
sumber
6

Saya baru saja pergi ke direktori bernama dalam kesalahan dan mengganti nama applicationhost.config dan memulai ulang dan VS membuat file baru dan berjalan dengan baik.

tepuk capozzi
sumber
2
  • Mencoba beberapa pendekatan disebutkan dalam jawaban, tapi apa akhirnya bekerja untuk saya itu menukar <IISUrl>dari .csprojdengan <CustomServerUrl>.

Edit:

  • Hal di atas tidak menyelesaikan akar penyebab masalah bagi saya. Namun, jika Anda telah melakukan pembaruan windows baru-baru ini, mungkin itu alasan yang menyebabkan masalah. Coba jalankan netsh http add iplisten 0.0.0.0dan lihat apakah itu menyelesaikan masalah.

Semoga ini bisa membantu seseorang yang masih mencari jalan.

Huzaim
sumber
1
Dari semua hal (dan maksud saya SEMUA), inilah ( <CustomServerUrl>) yang akhirnya melakukan trik untuk saya. Terima kasih banyak!
Abu
1

Saya tidak tahu mengapa, applicationhost.configfile saya benar-benar hilang dari C:\Users\Administrator\Documents\IISExpress\config\folder saya .

Salin / tempel C:\inetpub\history\applicationhost.configke folder itu sepertinya memperbaiki masalah bagi saya.

Punya idenya dari sini .

Daniel Szabo
sumber
Dalam kasus saya, file rusak. jadi saya menghapusnya dan menggantinya dengan file applicationhost.config yang ditemukan di pencarian sistem. Saya tidak memiliki hak admin sehingga tidak dapat mengakses inetpub \ history. Saya pikir Visual studio selalu mengharapkan file konfigurasi ini tetapi setelah itu meskipun saya menghapus file applicationhost.config berulang kali dari IISExpress \ config location VS terus membuatnya. Sepertinya kadang-kadang pengaturan rusak tetapi setelah itu sejalan dengan pengaturan yang benar, VS menangani semua pengaturannya sendiri.
kumar chandraketu
1
  1. Aktifkan fitur windows "Internet Information Services" di control panel.
  2. Buka file ".csproj" dan temukan
  3. Ubah baris ini berdasarkan kebutuhan Anda. http: // localhost: 777 /
  4. Buka proyek / solusi sekarang
  5. Jika gagal memuat lagi, cukup klik kanan solusi dan pilih "Reload Project".
Vernie Namca
sumber
1

Saya tahu ini mungkin kejadian langka, tetapi saya pikir saya akan menaruhnya di sini:

csprojFile saya disetel ke "hanya baca" (Jangan tanya saya bagaimana saya mengelolanya), tetapi setelah saya menonaktifkan akses "hanya baca", semuanya baik-baik saja. (VS2017)

Andy
sumber
0

Saya menghadapi masalah yang sama karena kata sandi jaringan saya berubah. Saya mengubah kata sandi masuk NetExtendor saya tetapi saya harus masuk di laptop saya dengan kata sandi lama.

Coba langkah-langkah berikut untuk memperbaiki masalah ini:

masuk ke Komputer dengan kata sandi apa pun yang berfungsi masuk ke vpn dengan kata sandi apa pun yang berfungsi ctl-alt-del untuk mengunci pc lalu gunakan kata sandi baru untuk membukanya

Ini berhasil untuk saya :-)

Terima kasih!

Rinki Barsainya
sumber
0

Bukan kesalahan yang sama persis, tetapi saya diarahkan ke jawaban ini sejak paruh pertama kesalahan cocok. File applicationhost.config Anda mungkin hanya bersifat baca-saja. Melepasnya memecahkan kesalahan bagi saya. Kesalahan itu memanggil file secara khusus, jadi Anda harus dapat menemukannya dengan mudah.

Leland Daniel
sumber
0

Masalah saya adalah dengan Windows 10 Defender. Saya telah memberikan izin IIS di masa lalu, tetapi sepertinya sekarang mengabaikannya. Akan memeriksanya nanti, tetapi untuk saat ini saya menonaktifkan akses folder terkontrol dan itu berhasil.

Steve Greene
sumber
0

Saya ingin membuka proyek keluar dari Visual Studio 2017 di VS 2019 dan mengalami masalah yang sama. Saya menemukan masalah terkait versi. Solusinya adalah: Buat proyek baru di VS yang lebih baru dan salin kode dari VS yang lebih lama.

Kousik Patra
sumber
Selamat datang di SO! Dalam pertanyaan tersebut, tidak disebutkan adanya perubahan pada versi VS. Saat Anda memposting jawaban, periksa apakah Anda menjawab pertanyaan tersebut. Jika tidak, maka buat saja pertanyaan dengan masalah ini dan jawab sendiri, sehingga akan membantu Komunitas.
David García Bodego
0

Coba dekripsi file applicationhost.config. Itu berhasil untuk saya.

Fran
sumber
-1

Berikut langkah-langkah untuk memperbaikinya:

  1. Pergi ke tempat file .csproj Anda. Ini biasanya satu direktori di bawah solusi (.sln)
  2. Klik kanan dan buka dengan editor teks (notepad)
  3. Temukan tag IISUrl dan ganti kontennya untuk http: // localhost: (YourPortNumber)
  4. Simpan dan muat ulang proyek Anda!
Hudson Nascimento
sumber