Web Uygulama Projesi […] IIS kullanacak şekilde yapılandırılmıştır. Web sunucusu […] bulunamadı.


285

Çözüm dosyamda, çözümü açtığımda "kullanılamıyor" olan bir web projem var. Web projesine sağ tıklayıp projeyi yeniden yüklediğimde, aşağıdaki hatayı alıyorum:

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

Bu web uygulaması için el ile sanal dizinler kurmadım.

Meslektaşlarım başına, Visual Studio sanal dizinler oluşturmamı istemelidir, ancak istenmiyorum.

IIS cihazımı yüklemeden önce VS2010'u yükledim.

İşte benim geliştirme makine kurulumu:

  • Windows 7 Enterprise
  • Hizmet Paketi 1
  • 64 bit işletim sistemi
  • Visual Studio 2010 Enterprise Hizmet paketi 1
  • IIS sürüm 7.5

Yanıtlar:


87

Bu olduğunda, en kolay çözüm sanal dizini elle yapmaktır.

Her şeyden önce, doğru ASP.Net sürümünün yüklü olduğundan ve IIS uzantılarını yüklediğinizden emin olmanız gerekir.

Bunu yapmak için, C: \ (Windows) \ Microsoft.NET \ Framework \ (dotnetver) \ (PC'nizdeki doğru klasörler için köşeli parantezli klasörlerin yerine geçen) içindeki ilgili .net sürümünün klasörüne gidin ve bu komutu çalıştırın

aspnet_regiis.exe -i

Sonra koşup bittiğinde, bazen koşuyor

iisreset

komut satırından yardımcı olur, bazen gerek yoktur.

Ardından, IIS Yöneticinize gidin ve localhost web sitenizi bulun ve klasör eklemeyi seçin. Projenizde gerçek ASP.Net projesini içeren klasöre göz atın ve ekleyin.

Son olarak, eklediğiniz klasöre sağ tıklayın ve 'uygulamaya dönüştür' veya 'sanal dizin oluştur' veya benzeri bir seçeneğiniz olmalıdır.

Sanal dizinin adının 'MyWebApp' olduğundan emin olun !!

Çözümünüzü yeniden yükleyin ve işe yarayacak.

Lütfen dikkatli olun; Bu bir programlama sorusu değildir (ve burada gerçekten gönderilmemelidir), ancak bu kılavuzu yaygın bir sorun olarak yayınladım, ancak gönderdiğim tavsiye geneldir; listelediğim komutlar doğrudur, ancak IIS'de yapmanız gereken adımlar değişebilir, sürümünüze ve hesap ayrıcalıklarınıza bağlıdır.

İyi şanslar!


Ben talimatları takip ve aşağıdaki hatayı alıyorum .. Başlamak için bu hata nedeniyle sanal dizin sildi. 'Telerik_Web_UI_WebResource_axd' olarak ayarlanmış benzersiz anahtar özelliği 'name' ile 'add' türünün yinelenen toplama girişi eklenemiyor
dotnet-practitioner 23

Çözümü başlattığınızda bu hatayı, IIS'yi veya Visual Studio'yu ne verir?
Russ Clarke

Ayrıca, yeni asp.net projeniz için web.config dosyasını kontrol edin, 'Telerik.WebResource.axd' için iki veya daha fazla referansa sahip olması yeterlidir.
Russ Clarke

Ben rahatsız edici girişi kaldırdığınızda web.config .. 'i kontrol ettim, sonra kaldırılan girişin gerekli olduğu hata mesajını alıyorum.
dotnet-uygulayıcısı

yeni hata mesajı için kısa bir süre sonra ayrı bir soru göndermek üzere
dotnet-practitioner

523

Kabul edilen cevap IIS Yöneticisi gerektirdiğinden ve IIS Express'te IIS Yöneticisi veya herhangi bir kullanıcı arayüzü olmadığından, IIS Express kullanıcıları için çözüm (ve diğer herkes için de çalışması gerekir):

Visual Studio'yu açıp hata iletisini aldığınızda, proje Çözüm Gezgini'ni sağ tıklatın ve "Edit {ProjectName} .csproj" seçeneğini belirleyin.

Proje dosyasında aşağıdaki satırı değiştirin: Dosyayı
<UseIIS>True</UseIIS>
kaydetmek
<UseIIS>False</UseIIS>
için.

Şimdi projenizi yeniden yükleyin.
Bitti.

Daha sonra projenizi açabileceksiniz. Bu noktada IIS'yi kullanmak istiyorsanız, proje özelliklerinize gidin, "Web" sekmesine tıklayın ve IIS kullanma seçeneğini seçin. Burada "Sanal Dizin Oluştur" butonu var. Bu dizini oluşturmak için Visual Studio'yu yönetici olarak çalıştırmanız gerektiğini söyleyebilir, gerekirse bunu yapın.


33
VS2010 UseIIS csproj dosyasında değil, .csproj.user dosyasında
oleksa

2
Benim durumumda hala IIS kullanmak istiyorum, bu yüzden sadece URL'yi değiştirdim, mükemmel çalıştı.
kjetilh

Yükseltme ve taşıma sırasında bu sorunu aldım. Çözüm yüklenmediğinden beri csproj'u metin düzenleyicide açtım, ancak bu benim için çalıştı. Teşekkürler Doug.
Kieran

2
Bu doğru cevap. Proje, hem IIS hem de IISExpress'i aynı anda kullanacak şekilde yapılandırılmıştır.
Aaron Reed

2
VS2013 kullanarak, çözümü sağ tıklattığınızda Edit {ProjectName} .csproj görmüyorum. Dosya sistemine gidip .csproj dosyasını elle düzenleyerek düzenlemeyi başardım. Salt okunurdu, bu yüzden küçük bir dans yapmak zorunda kaldım, ama işe yaradı.
Al Lelopath

222

Proje klasörünü açın ve {Project} .csproj.user silin , sonra projeyi Visual Studio'ya yeniden yükleyin.


2
Ekibimiz arasında bu IIS hatasını gören tek bendim. Birlikte çalıştığım geliştirici ekip, kaynak kontrolünden aynı .csproj dosyasına sahipti, bu yüzden yukarıdaki diğer çözümler sorunum değildi. Durumumda bu hataya neden olduğunu belirttiğiniz .csproj.user dosyası çıkıyor. Teşekkürler!
Yığımın Taşması

3
Bu, her şeyi denedikten sonra benim için çalıştı
David

3
Bu doğru cevap. Projenin makinenizdeki yapılandırmasıyla ilgili bir sorunu çözer (özellikle TFS ile çalışırken önemlidir).
Markus

1
Özel bir iisurl etiketi belirledik ancak proje hala yerel ana bilgisayarda başlatılırsa, bu da çözüm <IISUrl> MachineName.domain: 12345 / </ IISUrl >
LSP

5
Bu benim için çalıştı. Benim durumumda <UseIIS> ayarı yoktu.
14:45

33

Bu çözüm benim için çalıştı: Projeyi sağ tıklayın ve düzenlemeyi seçin ve aşağıdaki resimde gösterildiği gibi aşağıdaki kodu bulun.

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

VEYA

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

csproj ekran görüntüsü


30

benim için bu iki satırı .csproj dosyasından silmek zorunda kaldım

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

Sadece ilkini silmeyi denedim, ama yeterli değildi.

DÜZENLEME: Birçok kullanıcının belirttiği gibi, bu proje türünüzü değiştirebilir veya kaynak kontrol programınızla karışıklık yaratabilir. Artık sahip olmadığım bir okul projesi olduğu için bu sorunları araştıramıyorum. Lütfen bunu denerken dikkatli olun. En azından sildiklerinizin bir kopyasını alın.


9
Bu işe yaradı ve bu bir cevap olarak işaretlenmelidir. SO önerilen birçok çözüm denedim ama hiçbiri benim için bunun dışında çalıştı.
Bose_geek

3
Yukarıdaki tüm önerileri denedikten sonra, bu benim için gerçekten işe yaradı. Teşekkürler dostum!
Noble-Savage

2
Bu proje türüne göre değiştiğinden artık bir web uygulaması değil.
Oram

3
<ProjectGuid> dosyasını .csproj dosyasından kaldırmak iyi bir fikir değildir. Projeyi yüklemek için yalnızca @Proram belirtildiği gibi proje türünü değiştirdiği için kötü bir fikir olan <ProjectTypeGuids> 'i kaldırmak yeterlidir. Bu cevap, değişikliklerinizi yapmak istemiyorsanız iyidir, sadece VS'deki koda bakın.
elshev

1
Bu, yüklenici ile karşılaştığım çözüm gezgini yükleme hatalarını çözdü ve 2013'e taşındığım Visual Studio 2010 çözümü geliştirdi. Çözüm dosyasının 2 projesi var; bir web uygulaması ve bir web hizmeti. Her ikisini de yükleyemedim, bu yüzden Solution Explorer, çözüm dosyasını açmaya çalıştıktan sonra yalnızca iki boş klasör gösteriyordu. Önerilen ProjectGuid ve ProjectTypeGuids satırlarını yorumladıktan sonra, bu projelerin bağımlılıklarını Solution Explorer'da görebiliyordum. Benim için bu düşük riskli bir yüksek geri dönüş seçeneğiydi, çünkü bu değişiklikleri kolayca geri alabilirim. Teşekkürler!
JohnH

26

.Csproj veya vbproj dosyasını düzenleyin. Bu girişleri bulun ve değiştirin

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

1
Ayrıca DevelopmentServerPort'u 80 dışında bir değere değiştirmek zorunda kaldım.
JoshNaro

1
Ve ayarları csproj dosyasında bulamazsanız. .Csproj.user dosyasını açın ve orada yapın.
devzero

10

Benim durumumda, bu soruna bozuk IIS bağlamaları neden oldu. Özellikle, 'http' bağlamam silindi. Yeniden yaratmak sorunu çözdü.


Çok benzer bir sorun yaşadım. HTTP bağlantımın kendisini bir gün yeniden adlandırdığı görülüyor -_- için proje dosyası ayarı <IISUrl>değişmemişti (hafızamı ve akıl sağlığımı onayladığınız için teşekkürler SVN) ama bir şekilde iis bağlaması vardı. Düzeltildi ve yansıtılan hemen yüklendi.
Patrick M

Ayrıca, herhangi bir nedenle hedef sitenin sni / host adını değiştirip değiştirmediğinizi kontrol etmeyi unutmayın. Bu benim durumumda hataya neden oldu.
juarola

5

Visual Studio'yu Yönetici ayrıcalıklarıyla açmayı deneyin. Benim durumumda, IIS sitesine erişim sağladı ve bu hatayı ortadan kaldırdı. Daha sonra yönetici ayrıcalıkları gerektirmeyen IIS Express'i kullanmak için projeyi değiştirebildim.


5

Bu benim için çalıştı: -
Tüm IIS web sitelerinizi localhost'a (Tümü Atanmadı) yönlendirin

resim açıklamasını buraya girin


5

TFS ile bağlıysanız, project.csproj.user dosyanızı açın ve

<UseIISExpress>false</UseIISExpress>

ve doğru olarak değiştirin.

<UseIISExpress>true</UseIISExpress>

Her ne kadar bu gerçek çözüm daha sorun için bir geçici çözüm olduğunu hissediyorum, benim acil endişe çözüldü gibi bir başparmak verdi.
Nandun

Güzel çalıştı :)
Hammad Sajid

4

UseIIS özniteliğinin değerini true olarak ayarlamadan projeyi yükleyebilirsiniz. Aşağıdaki adımları uygulamanız yeterlidir:

Mywebproject.csproj dosyasında--

<IISUrl> http: // localhost / MyWebApp / </ IISUrl> etiketini silin ve dosyayı kaydedin. Uygulama, otomatik olarak varsayılan bağlantı noktasını atayacaktır.


4

Buna inanmayacaksınız, startgörsel stüdyo Yönetici olarak

mesajdan bariz şekilde

' Http: // localhost / MyWebApp ' Web Sunucusu bulunamadı.

bulunamadı çünkü mayıs it has no privileges to see it

Yöneticirestart olarak sadece visual studio


3

Benim durumumda http'den https'ye geçmek istedim, dolayısıyla http'yi IIS'den sildim. .Csproj.user dosyamda hala sahip olduğumu buldum:

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

Ben de şöyle değiştirdim:

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

2

Benim durumumda, sadece komutu çalıştırarak çözümü çevrimdışı modda açabildim:

iisreset

2

Orada Win8 kullanıcıları için, kabul edilen cevaptaki adımları izlerseniz, konsol size "bu komutu yürütmek için komut satırını kullanmayacaksınız" (başka bir deyişle) yazan bir mesaj verir. Bunun yerine, Programlar ve Özellikler'e Denetim Masası (veya Windows + R> appwiz.cpl) aracılığıyla erişin, 'Windows özelliklerini aç veya kapat'ı tıklayın ve aşağıdakilerin yüklü olduğundan emin olun:

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

Bu, diğer seçenekleri de kontrol edecektir. Bu özellikleri yüklediğimde ve VS2012'yi yükseltilmiş izinlerle çalıştırdığımda, uygulamamı başarıyla başlatabiliyordum.


2

Bu .csproj dosyasından bir proje açmaya çalıştığımda benimle oluyor, ama VS'den projeyi açarak üstesinden geliyorum:

Dosya> Aç> Web Sitesi

ve projemi içeren dizini seçin.


1

Ben de bu hatayı aldım. Her şeyin doğru kurulduğunu düşündüm, ancak bir şeyin eksik olduğunu öğrendim: Projem için kullandığım ana bilgisayar adı (henüz) çözülemedi.

Uygulamam mevcut müşterinin adını ana bilgisayar adından belirlediğinden, clientname.mysuperapp.localgeliştirme için olduğu gibi bir ana bilgisayar adı kullandım . Geliştirme ana bilgisayar adını hostsdosyama eklediğimde proje yeniden yüklenebilir oldu. Açıkçası, buna yine de vardı, ama VS projeyi yüklemeden önce ana bilgisayar adını kontrol düşündüm.


1

IIS Express'in yüklü olup olmadığını kontrol edin. IIS Express eksikse, Visual Studio ayarı atabilir <UseIISExpress>false</UseIISExpress>ve yine de ifadeyi arayabilir.


1

benim durumumda "Varsayılan" bir web siteniz olduğundan emin olun


1

Benim durumumda, IIS'deki "Varsayılan Web Sitesi" 80 numaralı bağlantı noktasında localhost için bir bağlamaya sahip değildi. .Csproj dosyasındaki değeriniz için bir bağlantınız olmalıdır.


1

Aşağıdaki bağlantıyı indirdikten sonra IIS Express'i yeniden yükleyerek bunu düzelttim:

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


1
Bu soruya bir cevap sağlamaz. Yeterli bir üne sahip olduğunuzda , herhangi bir yazı hakkında yorum yapabilirsiniz ; bunun yerine askerden açıklama gerektirmeyen cevaplar verin . - Yorumdan
FluffyKitten

@ FluffyKitten Ben OP aynı hata vardı, diğer tüm cevapları denedim ve hiçbir şey IIS Express yeniden yükleme kısa çalıştı. Bu yüzden OP'nin sorusuna benim cevabım olduğuna inanıyorum. IIS'yi yeniden yükleyin.
Matthew

Cevabınız düşük kalite olarak işaretlendi ve bir inceleme sürecinden geçiyor (yorumun sonunda "İncelemeden" notuna dikkat edin). Çalışabilirken, başka hiçbir şey çalışmadığında ve bu OP sorunu için özel bir çözüm olmadığında yazılımı yeniden yüklemek son çare seçeneğidir.
FluffyKitten

Başka hiçbir şey işe yaramazsa son çare seçeneği ise - ve Ajay2707'ye göre, bazı zayıf ruhlar için çalışan diğer cevapların hiçbirinin potansiyeli yoksa - o zaman bu cevabın yararlı olabileceğini düşünüyorum. Bazı insanlar için işe yarayan tek şey olabileceği zaman bir cevabı düşük kalite olarak nasıl belirleyebilirsiniz? Ajay2707'yi destekliyorum. Topluluğa katkıda bulunmak için zaman ayırdığınız için teşekkür ederiz.
nardnob

Inb4 bu konuşma düşük kalite olarak taşınır / silinir. viva la direnci !!
nardnob

0

Benim durumumda, csproj'da belirtilen url dosyasında yanlıştı.

Ön ekinin eklenmesi gerekiyordu Www .

Değişiklikleri yaptım, dosyayı kaydettim ve proje iyi yüklendi.


0

<ProjectTypeGuids>.Csproj dosyasındaki öğe birim test projesi GUID içeriyorsa bu sorunla karşılaştım {3AC096D0-A1C2-E12C-1390-A8335801FDAB}.

Çıkarılması, projenin sorunsuz bir şekilde yüklenmesini sağladı.


0

DNN kullanıcıları için benim sorunum 80 numaralı bağlantı noktasında dnndev.me için bir bağlayıcıya ihtiyaç duymamdı. Farklı bağlantı noktalarında çalışan birden çok yüklemem var ve VS bu URL'nin bağlantı noktası 80'de (benimki gibi 86 değil) var olmasını gerektiriyor.


0

Bu tamamlanmış çözümü adım adım takip edin. VS 2017'de benim için çalışıyor.

  1. Komut istemini yönetici modunda aç

  2. Dosya gezgini'ni açın ve .NET Framework klasörüne gidin

      Eg:C:\Windows\Microsoft.NET\Framework\v4.0.30319

    v4.0.30319 Bu benim .NET klasörüm. ilgili klasörünüzü seçmek istiyorsunuz.

  3. in CMD - .NET klasörü yoluna git

    cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
  4. CMD'de aşağıdaki komutu yürütün

    aspnet_regiis.exe -i

    Sonunda bu mesajı görebilirsiniz - ASP.NET (4.0.30319.0) yüklemesi tamamlandı

    iisreset

    Bu mesajı sonunda görebilirsiniz - İnternet hizmetleri başarıyla yeniden başlatıldı

  5. Bilgisayarınızda IIS'yi açın (yapılandırma değilse Bunu izleyin )

    1. Siteye gidin ve sağ tıklayın

    2. Web Sitesi Ekle

    3. Dolgu - Site adı ve fiziksel yolu seçme

    4. Sonra bağlantı noktası numarasını yazın (.csproj dosyasında bağlantı noktası numarasını bulabilirsiniz ve bağlantı noktası numarası (IISUrl) ile eşit olmalıdır

    EG : <IISUrl>http://localhost:15724/</IISUrl> my port is 15724

    Not : 80 numaralı bağlantı noktasını oluşturamazsınız . çünkü varsayılan IIS sayfası kullanmış

    1. Tamam'ı tıklayın
  6. Yönetici izniyle açık görsel stüdyo

  7. Ardından sağ tıklayın ve projenizi yeniden yükleyin

Sorununuz çözülmüş olabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.