it-swarm.com.de

Das Webanwendungsprojekt [...] ist für die Verwendung von IIS konfiguriert. Der Webserver [...] wurde nicht gefunden.

Ich habe ein Webprojekt in meiner Lösungsdatei, das "nicht verfügbar" ist, wenn ich die Lösung öffne. Wenn ich mit der rechten Maustaste auf das Webprojekt klicke und das Projekt erneut lade, wird die folgende Fehlermeldung angezeigt:

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

Ich habe keine virtuellen Verzeichnisse für diese Webanwendung manuell eingerichtet.

Laut Kollegen sollte Visual Studio mich auffordern, virtuelle Verzeichnisse zu erstellen, aber ich werde nicht dazu aufgefordert.

Ich habe VS2010 vor der Installation von IIS auf meinem Dev-Rechner installiert.

Hier ist mein Setup für die Entwicklungsmaschine:

  • Windows 7 Enterprise
  • Service Pack 1
  • 64-Bit-Betriebssystem
  • Visual Studio 2010 Enterprise Service Pack 1
  • IIS Version 7.5
259

In diesem Fall ist es am einfachsten, das virtuelle Verzeichnis manuell zu erstellen.

Zunächst müssen Sie sicherstellen, dass Sie die richtige Version von ASP.Net installiert haben und dass Sie die IIS) - Erweiterungen installiert haben.

Wechseln Sie dazu in den Ordner der entsprechenden .net-Version unter c:\(Windows)\Microsoft.net\(Dotnetver)\(ersetzen Sie die richtigen Ordner auf Ihrem PC durch die Ordner in Klammern), und führen Sie diesen Befehl aus

aspnet_regiis.exe -i

Nächstes Mal, wenn das gelaufen und beendet ist, manchmal läuft es

iisreset

von der Kommandozeile hilft, manchmal müssen Sie nicht.

Wechseln Sie als Nächstes zu Ihrem IIS Manager, suchen Sie Ihre localhost-Website und wählen Sie Ordner hinzufügen. Wechseln Sie zu dem Ordner in Ihrem Projekt, der das eigentliche ASP.Net-Projekt enthält, und fügen Sie diesen hinzu.

Schließlich klicken Sie mit der rechten Maustaste auf den Ordner, den Sie hinzugefügt haben, und Sie sollten die Option "In Anwendung konvertieren" oder "Virtuelles Verzeichnis erstellen" oder ähnliches haben.

!! Stellen Sie sicher, dass das virtuelle Verzeichnis den Namen 'MyWebApp' hat !!

Laden Sie Ihre Lösung neu und es sollte funktionieren.

Bitte seien Sie vorsichtig; Dies ist keine Programmierfrage (und sollte hier eigentlich nicht veröffentlicht werden), aber ich habe diese Anleitung veröffentlicht, da es ein häufiges Problem ist, aber die Ratschläge, die ich veröffentlicht habe, sind allgemein gehalten. Die Befehle, die ich aufgelistet habe, sind korrekt, aber die Schritte, die Sie in IIS ausführen müssen, können variieren. Dies hängt von Ihrer Version und Ihren Kontoberechtigungen ab.

Viel Glück!

82
Russ Clarke

Da für die akzeptierte Antwort IIS Manager und IIS Express nicht IIS Manager oder eine Benutzeroberfläche erforderlich ist, finden Sie hier die Lösung für Sie IIS Express-Benutzer (und sollte auch für alle anderen funktionieren):

Wenn Sie Visual Studio öffnen und die Fehlermeldung erhalten, klicken Sie mit der rechten Maustaste auf den Projektmappen-Explorer und wählen Sie "Bearbeiten {Projektname} .csproj".

Ändern Sie in der Projektdatei die folgende Zeile:
<UseIIS>True</UseIIS>
zu
<UseIIS>False</UseIIS>
Speicher die Datei.

Laden Sie nun Ihr Projekt neu.
Getan.

Sie können dann Ihr Projekt öffnen. Wenn Sie zu diesem Zeitpunkt IIS verwenden möchten, rufen Sie einfach die Projekteigenschaften auf, klicken Sie auf die Registerkarte "Web" und wählen Sie die Option zur Verwendung von IIS aus. Dort befindet sich die Schaltfläche "Virtuelles Verzeichnis erstellen". Möglicherweise werden Sie darauf hingewiesen, dass Sie Visual Studio als Administrator ausführen müssen, um dieses Verzeichnis zu erstellen. Tun Sie dies gegebenenfalls.

476
Doug S

Öffnen Sie den Projektordner, löschen Sie {Project} .csproj.user und laden Sie das Projekt erneut in Visual Studio.

208
qjuanp

Diese Lösung hat bei mir funktioniert: Klicken Sie mit der rechten Maustaste auf das Projekt und wählen Sie Bearbeiten, um den folgenden Code zu finden (siehe Abbildung unten).

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

OR

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

csproj screenshot

27
Umar Abbas

Bearbeiten Sie die Datei .csproj oder vbproj. Suchen und ersetzen Sie diese Einträge

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

für mich musste ich diese beiden Zeilen aus der .csproj-Datei löschen

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

Ich habe versucht, nur den ersten zu löschen, aber es hat nicht gereicht.

BEARBEITEN: Wie viele Benutzer bereits betont haben, kann dies Ihren Projekttyp ändern oder Ihr Quellcodeverwaltungsprogramm durcheinander bringen. Ich kann diese Probleme nicht untersuchen, da es ein Schulprojekt war, das ich nicht mehr habe. Bitte seien Sie vorsichtig, wenn Sie dies versuchen. Mach wenigstens eine Kopie von dem, was du löschst.

21
kisslory

In meinem Fall wurde dieses Problem durch fehlerhafte IIS Bindungen verursacht. Insbesondere wurde meine 'http'-Bindung gelöscht. Das erneute Erstellen hat das Problem behoben.

10
Roger Lipscombe

Das hat bei mir funktioniert: -
Stellen Sie sicher, dass alle Ihre IIS Websites nur auf localhost (All Unassigned) verweisen

enter image description here

5
JerryGoyal

Versuchen Sie, Visual Studio mit Administratorrechten zu öffnen. In meinem Fall gab es Zugriff auf die IIS= Site und ließ diesen Fehler verschwinden. Ich konnte dann das Projekt auf die Verwendung von IIS Express umstellen, was nicht der Fall ist scheinen keine Administratorrechte zu benötigen.

5
kad81

Sie können das Projekt laden, ohne den Wert des Attributs UseIIS auf true zu setzen. Befolgen Sie einfach die folgenden Schritte:

In der Datei mywebproject.csproj--

Löschen Sie das Tag <IISUrl> http: // localhost/MyWebApp / </ IISUrl> und speichern Sie die Datei. Die Anwendung weist ihr automatisch den Standardport zu.

4
Yogesh Gangwar

In meinem Fall wollte ich von http zu https wechseln, also hatte ich http aus IIS gelöscht. In meiner .csproj.user-Datei fand ich noch:

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

Also habe ich es geändert in:

<IISUrl>https://localhost/</IISUrl>
3
Njaal Gjerde

Sie werden es nicht glauben, start Visual Studio als Administrator

wie aus der Nachricht ersichtlich

Der Webserver ' http: // localhost/MyWebApp ' wurde nicht gefunden.

konnte nicht gefunden werden, weil kann it has no privileges to see it

also einfach restart Visual Studio als Administrator

3

In meinem Fall konnte ich die Lösung im Offline-Modus öffnen, indem ich den folgenden Befehl ausführte:

iisreset
2
Conrado Fonseca

Dies passiert bei mir, als ich versuchte, ein Projekt aus der .csproj-Datei zu öffnen, aber ich komme darüber hinweg, indem ich das Projekt aus VS öffne:

Datei> Öffnen> Website

und wählen Sie das Verzeichnis aus, in dem sich mein Projekt befindet.

2
mshwf

Wenn Sie als Win8-Benutzer die in der akzeptierten Antwort angegebenen Schritte ausführen, gibt die Konsole eine Meldung aus, in der Sie gefragt werden, ob Sie diesen Befehl nicht über die Befehlszeile ausführen sollen (Umschreibung). Greifen Sie stattdessen über die Systemsteuerung (oder Windows + R> appwiz.cpl) auf Programme und Funktionen zu, klicken Sie auf "Windows-Funktionen aktivieren oder deaktivieren" und stellen Sie sicher, dass Folgendes installiert ist:

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

Dies wird auch eine Reihe anderer Optionen prüfen. Sobald ich diese Funktionen installiert und VS2012 mit erhöhten Berechtigungen ausgeführt habe, konnte ich meine App erfolgreich starten.

2
Scott Silvi

Wenn Sie über TFS verbunden sind, öffnen Sie die Datei project.csproj.user und suchen Sie nach

<UseIISExpress>false</UseIISExpress>

und ändern Sie es auf true.

<UseIISExpress>true</UseIISExpress>
2
Patrick Dengler

stellen Sie in meinem Fall sicher, dass Sie eine "Standard" -Website haben

1
drew

In meinem Fall hatte die "Standardwebsite" in IIS auf Port 80 keine Bindung für localhost. Sie sollten eine Bindung für jeden Wert in der .csproj-Datei haben.

1
Dan Mirescu

Ich hatte auch diesen Fehler. Ich dachte, alles wäre korrekt eingerichtet, aber ich stellte fest, dass eine Sache fehlte: Der Hostname, den ich für mein Projekt verwendete, war (noch) nicht auflösbar.

Da meine App den Namen des aktuellen Clients anhand des Hostnamens ermittelt, habe ich für die Entwicklung einen Hostnamen wie clientname.mysuperapp.local Verwendet. Als ich den Entwicklungs-Hostnamen zu meiner hosts -Datei hinzufügte, konnte das Projekt erneut geladen werden. Natürlich musste ich das trotzdem tun, aber ich habe nicht gedacht, dass VS den Hostnamen überprüft, bevor das Projekt geladen wird.

1
fero

Überprüfen Sie, ob IIS Express installiert ist. Wenn IIS Express fehlt, verwirft Visual Studio möglicherweise die Einstellung <UseIISExpress>false</UseIISExpress> und immer noch nach dem Express suchen.

1
Thea

Ich habe dies einfach durch eine Neuinstallation von IIS Express nach dem Download von untenstehendem Link behoben:

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

1
Matthew

In meinem Fall war die URL, auf die in der Datei csproj verwiesen wird, falsch.

Es musste mit www. vorangestellt werden

Ich habe die Änderungen vorgenommen, die Datei gespeichert und das Projekt gut geladen.

0
Patrick Fischer

Für DNN-Benutzer bestand mein Problem darin, dass ich eine Bindung für dnndev.me an Port 80 benötigte. Ich habe mehrere Installationen, die auf verschiedenen Ports ausgeführt werden, und VS erfordert, dass diese bestimmte URL auf Port 80 vorhanden ist (nicht 86 wie meine).

0
Mickers

Ich bin auf dieses Problem gestoßen, als das <ProjectTypeGuids> -Element in der .csproj-Datei enthielt die GUID des Komponententestprojekts: {3AC096D0-A1C2-E12C-1390-A8335801FDAB}.

Durch das Entfernen wurde das Projekt problemlos geladen.

0
MvdD