Ich habe ein asp.net-Webanwendungsprojekt in Visual Studio 2012. Wenn ich es starten möchte, habe ich die folgende Fehlermeldung:
Express-Webserver IIS kann nicht gestartet werden: Port "4012" wird verwendet
Dieses Problem kam von nichts. Wie kann ich es lösen?
Aus der MSDN Library
Visual Studio kann nicht garantieren, dass der angegebene Port .__ ist. verfügbar, wenn Sie Ihre Dateisystem-Website ausführen. Wenn der Port in .__ ist. Wenn Sie eine Seite ausführen, zeigt Visual Studio eine Fehlermeldung an.
Um den von IIS Express für die Ausführung Ihres Programms verwendeten Port zu ändern, sollten Sie die in diesem Artikel in MSDN beschriebenen Schritte ausführen
Gewusst wie: Angeben eines Ports für den Entwicklungsserver
Kurz gesagt, wir müssen die Datei %systemdrive%:\Users\<username>\Documents\IISExpress\config
bearbeiten, die in dieser Datei gefundenen Bindungsinformationen ändern und andere Konfigurationen für den IIS Express ändern.
Als eine Konsequenz dieser nicht so einfachen Möglichkeit, das Problem zu beheben, empfehle ich, die Anwendung zu schließen, die versucht, diesen Port-Zugriff auf Ihrem Dev-Computer zu verwenden. Suchen Sie nach bestimmten Tools wie TCPView von Microsoft, die die Anwendung ermitteln können, die Ihren Port belegt hat. Oft ist es nur der Browser
Ich hatte ein ähnliches Problem in Visual Studio 2012:
ERROR: "Express-Webserver IIS kann nicht gestartet werden.
URL http: // localhost: 1030/für Website-Anwendung "MySite" /"..__ konnte nicht registriert werden. Fehlerbeschreibung: Der Prozess kann keine Datei verwenden, da er von einem anderen Prozess verwendet wird. (0x85968574)
REASON: Diese Portnummern werden zur Laufzeit dynamisch generiert. Es hat garantiert, verfügbar zu sein. Wenn es von einem anderen Prozess erworben wird, wird das Projekt nicht ausgeführt. Also müssen wir es an einem anderen Hafen versuchen.
L&OUML;SUNG: Es gibt verschiedene Lösungen, die ich im Internet gefunden habe, aber das Problem bleibt ungelöst. Zum Schluss habe ich folgende Lösung ausprobiert:
Dadurch werden Änderungen in IIS -Konfigurationsdateien vorgenommen, und wenn dies automatisch erforderlich ist, müssen wir keinen Code explizit ändern. Das ist Arbeit für mich, die Hoffnung wird auch für Sie funktionieren.
Führen Sie "netstat -b" über die Eingabeaufforderung aus, um zu sehen, welche Anwendung Port 4012 verwendet. Wenn Sie den Prozess IIS beenden, kann Express über Port 4012 gestartet werden.
Das Töten des IIS Express Worker Process löst das für mich; Ich stieß darauf, während ich versuchte, zwei gleichzeitige Instanzen von Visual Studio 2015 zu debuggen und zwischen den beiden Weblösungen zu wechseln.
Wenn dies ein ständiges Problem ist, ist die Antwort von Kedar, die Lösung zu ändern, besser, aber zur Not, für eine Codeüberprüfung usw., bevorzuge ich dies.
Eine Lösung ist das Löschen oder Löschen des Verlaufs in Ihrem Browser. Starten Sie dann das Visual Studio neu und führen Sie Ihre Anwendung erneut aus.
Wenn diese Lösung nicht funktioniert, müssen Sie die Portnummer für Ihren Entwicklungsserver (IIS Express) ändern.
Ich hoffe es hilft dir.
Wenn diese Situation plötzlich ist (alles funktioniert in Ordnung, aber plötzlich der Fehler Startet den IIS Express-Webserver wird nicht gezeigt), lautet die Lösung, die für mich oft funktioniert, einfach
Funktioniert wie ein Zauber :) Falls nicht, probiere andere Lösungen aus diesem Thread aus.
PS. Ich poste es als Antwort, damit es leicht gefunden werden kann, obwohl es hier irgendwo in einem Kommentar geschrieben wurde.
Schließen Sie Visual Studio und öffnen Sie es erneut mit der Option "Als Administrator ausführen".
Entfernen Sie Ihre zusätzlichen Bindungen aus der Konfigurationsdatei.
führen Sie den Befehl Eingabeaufforderung als Administrator aus und geben Sie den Typ ein.
1 Netsh http zeigen URL
sie sehen eine Liste der verwendeten URLs. Stellen Sie sicher, dass die URL, die Sie derzeit verwenden möchten, in dieser Liste aufgeführt ist. Im nächsten Schritt müssen Sie diese Reservierung löschen.
2 netsh http delete urlacl url = / Ihre vollständige URL, wie in der Liste oben aufgeführt /
starten Sie nach der Bestätigung IIS erneut.
Dieser Fehler ist auch aufgetreten, wenn Fiddler gleichzeitig mit Visual Studio ausgeführt wurde. Fiddler zu beenden und die Anwendung erneut auszuführen, war für mich der Trick.
Einfach den Computer neu zu starten, wurde für mich behoben.
In web.csproj die Portnummer ändern
<DevelopmentServerPort>56048</DevelopmentServerPort>
Ich hatte genau das gleiche Problem, dass das OP sagt: "Dieses Problem kam von nichts."
Und ich habe einfach meine Maschine neu gestartet und es hat wieder funktioniert. Neustart IIS Express funktionierte nicht.
Das Problem wurde mit den folgenden Schritten behoben: - Projekt-> Eigenschaften-> Web - Wählen Sie unter Server den lokalen IIS aus. - Speichern Sie die Einstellung und navigieren Sie erneut
In meinem Fall musste ich zwei Dinge tun:
ein. Entfernen Sie das virtuelle Verzeichnis aus dieser Datei:
C:\Users\<user-name>\Documents\IISExpress\config\applicationhost.config
b. Führen Sie das Programm TCPView aus: http://technet.Microsoft.com/en-us/sysinternals/bb897437 Suchen Sie den Prozess, der Ihren Port verwendet, und "Prozess beenden".
Öffnen Sie anschließend in Visual Studio die Eigenschaften des Web-App-Projekts, wählen Sie die Registerkarte Web und klicken Sie auf die Schaltfläche "Virtuelles Verzeichnis erstellen", um das virtuelle Verzeichnis neu zu erstellen. Führen Sie die Web-App im Debug-Modus aus.
Eine andere Option ist, den applicationhost.config
auch aus Ihrem lokalen Lösungsordner zu löschen.
Visual Studio speichert dies ebenfalls in einem Ordner mit dem Namen .vs\config
im Stammverzeichnis Ihres Lösungsordners.
Lösche oder ändere den applicationhost.config
dort half mir das Problem zu lösen
Versuchen Sie die folgenden Schritte:
Navigieren Sie zu IIS Express
cd "C:\Program Files (x86)\IIS Express\"
führen Sie diesen
appcmd.exe list site /xml | appcmd delete site /in
aus
Löschen Sie außerdem Ihre temporären Dateien in %temp%
und melden Sie sich ab oder starten Sie den Computer neu
Dies löscht alle Seiten, viel Spaß!
Bitte entfernen Sie Ihren .vs
-Ordner und die applicationhost.config
-Datei und führen Sie dann Ihren Code aus.
Gehen Sie einfach zu taskmanager -> Process -> iisexpress -> Rechtsklick -> Prozessbaum beenden -> dann können Sie Ihre Anwendung erstellen und ausführen