Was mache ich:
Das Löschen von applicationhost.config
in Documents\IISExpress\config
ändert die Fehlermeldung nicht. (Es gibt auch einen IISExpress
-Ordner in program files
und program files (x86)
.)
Etwas ist mir aufgefallen und ich weiß nicht, ob es ein Problem ist:
Die referenzierte Datei 'lib/jquery-validation/jquery.validate.js' wurde nicht gefunden.
Ich habe eine Deponie mit rawcap bekommen, aber da fällt mir nicht viel auf. Einige davon waren da:
"Framework": {"FrameworkName": "DNXCore, Version = v5.0", "FriendlyName": "DNX Core 5.0", "ShortName": "dnxcore50", "RedistListPath": null}
Ich stelle kein Problem fest, aber ich habe die Netzwerkdaten, wenn dies helfen kann, herauszufinden, warum ich keine Verbindung zum Webserver herstellen kann. Ich bekomme sofort einen RST,ACK
, also vermute ich, dass der Port geschlossen ist und was auch immer dieser Webserver ist, wird nicht eingerichtet.
Mehr zu diesem Problem: 800700c1 Fehler von/trace: Fehler
Ich habe es versucht:
Nach der Installation von Update 2 für Visual Studio 2015 wurde derselbe Fehler angezeigt. Ich habe alles ohne Erfolg versucht. Ich habe jedoch eine Lösung gefunden, die für mich funktioniert:
Beenden Sie VS und löschen Sie die Datei (Projekt) .vs\applicationhost.config. VS neu starten Es sollte anfangen zu arbeiten.
Versuchen Sie es mit einem anderen Port. Ich habe gerade ein neues Core 1.0 RC1-Projekt eingerichtet und den gleichen Fehler erhalten.
Arbeitete für mich (TM).
Antwort von: https://stackoverflow.com/a/28650554/134761
Ich habe dieses Problem in .net core 2.0 angetroffen, wenn ich die Portnummer meines Projekts aktualisiere.
Ich konnte das Problem in zwei Schritten sortieren:
Die Lösung, die für mich funktioniert hat, war: Schließen Sie das VS-Projekt.__ Navigieren Sie im Datei-Explorer zum Projekt und löschen Sie den gesamten ".vs" -Ordner Starten Sie das ProjektRun als "Debug". Works Anscheinend hat es etwas mit der Datei "applicationhost.config" zu tun.
Genießen!
Ich hatte das gleiche Problem, aber so wie ich es behoben habe, ging ich zur applicationhost.config und entferne einen Port, der nicht von mir hinzugefügt wurde (IIS Express würde ich vermuten), der meine spezifische Port-Site auf einem anderen Port platziert.
Das hatte die config-Datei für meine Bindings:
<bindings>
<binding protocol="http" bindingInformation="*:54764:localhost" />
<binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>
Ich habe das erste Bindungselement entfernt, da der einzige Port, den ich wollte, 44360 war. Meine Konfigurationsdatei sieht jetzt so aus:
<bindings>
<binding protocol="https" bindingInformation="*:44360:localhost" />
</bindings>
Jetzt sehe ich den Fehler beim Debuggen nicht.
Ich bemerkte auch, dass meine zweite API in meinem Projekt Port 80 zugewiesen hatte. Ich entfernte sie ebenfalls.
Führen Sie VisualStudio mit Administratorrechten aus und führen Sie das Projekt aus. Schließen Sie anschließend VisualStudio und alle Fehler und führen Sie VisualStudio erneut mit dem normalen Benutzer aus.
Das hat es für mich getan.
Sieht so aus, als müsste IIS etwas mit Admin-Privilegien in einige Konfigurationen schreiben (Port 80 funktionierte nicht mit normalen Benutzern, Port 6767 funktionierte jedoch einwandfrei).
löschen Sie die Ordner bin und obj aus dem Projektordner und erstellen Sie sie neu.
Schließen Sie einfach das visuelle Studio und öffnen Sie es erneut und führen Sie es aus.
Meines geschieht, sobald ich eine neue Bindung in der applicationhost.config hinzufüge, die als Administrator ausgeführt wurde, um das Problem zu beheben.
Ich konnte diesen Fehler durch Ändern einer einzelnen Sache ändern. In meiner launchSettings.json
-Datei in meinem ASP.Net Core 1.0 RC2-Webanwendungsprojekt:
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "https://localhost:18177/",
"sslPort": 0
}
},
zu
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:18177/",
"sslPort": 0
}
},
Ich hatte zu https gewechselt, als ich versuchte, das Projekt mit diesem Protokoll auszuführen. Anscheinend ist dies nicht der Ort, um diese Änderung vorzunehmen. Ich vermute, es werden mehrere Bindungen für denselben Port erstellt, und IIS Express gefällt das nicht.
In meinem Fall war dies eine andere Anwendung, die denselben Port abhörte, an den IIS Express versucht, eine Verbindung herzustellen. Ich muss netstat -ao
ausführen, um die PID des Prozesses anzuzeigen, der den gleichen Port und die Anwendung zum Herunterfahren verwendet. In meinem Fall war die Bewerbung Viber.
Ich habe .UseUrls("https://localhost:<some port>/")
zu Program.cs hinzugefügt. Dies schien mir den Trick zu bringen!
Ich bin gerade auf das gleiche Problem gestoßen und habe alle "iisexpress.exe" -Prozesse abgebrochen, die noch ausgeführt wurden. Das hat bei mir funktioniert!
Ich werde nicht so tun, als würde ich vollständig verstehen, was ein MS-Fehler für dieses Problem bedeutet, aber hier ist eine andere mögliche Lösung:
Suchen Sie in der Datei .vs/config/applicationHost.config den Abschnitt für <system.applicationHost><applicationPools>
. Stellen Sie unter den Pools sicher, dass der Attributwert managedRuntimeVersion
mit dem Wert übereinstimmt, der in der IIS - Konfiguration für das System (und/oder der Version des installierten .NET-Frameworks) enthalten ist.
Beispielsweise können Sie (wie ich) feststellen, dass die generierte Datei Folgendes aufweist:
<add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
In meinem Fall würden Sie dies durch Folgendes ersetzen:
<add name="Clr4IntegratedAppPool" managedRuntimeVersion="v4.0.30319" managedPipelineMode="Integrated" CLRConfigFile="%IIS_USER_HOME%\config\aspnet.config" autoStart="true" />
Beachten Sie den Ersatz von "v4.0" in "v4.0.30319". Dies hat das Problem gelöst.
Was scheint los zu sein:
Ich glaube, dass VS eine applicationHost.config-Datei mit "Standard" -Versionen für das .NET-Framework generiert, die möglicherweise nicht mit der spezifischen Version übereinstimmen, die auf dem System installiert/konfiguriert ist. Sie können dieses Problem debuggen/beobachten, indem Sie die Ausführung in Process Monitor verfolgen und die Befehlszeile für iisexpress.exe suchen. Die Ausführung dieses Befehls mit hinzugefügtem /trace:error
gibt eine informativere Meldung über einen Fehler beim Laden der CLR mit Version v4.0. Nämlich:
IIS Express starten ...
Fehler beim Versuch, die CLR-Version v4.0 vorab zu laden. h = 80131700
Fehler beim Initialisieren des W3WP_Host hr = 80131700
Prozessmodell Herunterfahren aufgerufen
Iisexpress kann nicht gestartet werden.
Wie dem auch sei, stellte sich heraus, dass dies für jemand anderen hilfreich sein könnte, da es häufig genug ist, mehrere Online-Referenzen mit schlechten Informationen zu haben, und ich persönlich habe es jetzt ein paar Mal getroffen.
Für mich bestand das Problem darin, dass ein anderer Prozess denselben Port verwendete. (In meinem Fall hat Outlook denselben Port verwendet wie meine Website und daher konnte meine Website nicht gestartet werden.)
Ja, Sie können den lokalen Port ändern. Wenn Sie jedoch eine API oder etwas ausführen, das andere Anwendungen benötigen, möchten Sie dies nicht immer tun.
Um eine Liste der verwendeten Anwendungen anzuzeigen, öffnen Sie den CMD und geben Sie "netstat -aon" .__ ein. Sie erhalten eine Liste der Anschlüsse. Suchen Sie den Port, den Ihre Site verwenden soll oder den Sie verwenden möchten, und notieren Sie sich die PID.
Öffnen Sie nun den Task-Manager und klicken Sie auf die Registerkarte "Details". Finden Sie den Prozess mit Ihrer PID und beenden Sie ihn. Jetzt sollten Sie in der Lage sein, IIS Express mit diesem Port zu starten.
Versuchen Sie es zuerst, wenn es funktioniert hat und plötzlich aufgehört hat:
Meine Lösung (für .net Core 2.0) war, dass ich vergessen hatte, die Portnummer in der applicationUrl unter iisExpress in launchSettings.json hinzuzufügen
"iisExpress": {
"applicationUrl": "https://localhost:50770",
"sslPort": 50770
}
Versuchen Sie es in cmd
taskkill /im iisexpress.exe /f
taskkill /im dotnet.exe /f
und drücken Sie f5 ..__ Ich ändere keine Ports, lösche keine Dateien oder starte VS nicht neu.
Ich habe einfach auf "Enable SSL" umgeschaltet. Das hat mein Problem gelöst.
Ich denke, das zugrunde liegende Problem ist die Erlaubnis für mich
Ich habe nicht herausgefunden, was das Problem verursacht hat. Aber ein Reparatur installieren behoben.
Führen Sie das Visual Studio einfach als Administrator aus und fertig.
Für mich war es eine Mischung aus diesen Anweisungen :
Löschen Sie die .vs\applicationhost.config Ihrer Webanwendung, und versuchen Sie es mit nochmal.
Und dann, vielleicht am wichtigsten, Visual Studio mit Administratorrechten ausführen.
Ich konnte dieses Problem durch einen Neustart meines Computers beheben. Ich habe ein paar Dinge erfolglos ausprobiert und schließlich meinen Computer aufgegeben und neu gestartet. Nach meinem Neustart hat es seit einigen Tagen gut funktioniert. Wahrscheinlich das Ergebnis eines Prozesses, der aufgehängt wurde.
Stellen Sie sicher, dass der folgende Registrierungsschlüssel \HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters\ListenOnlyList
keine IP-Adressen enthält, die nicht an einen aktivierten Netzwerkadapter auf Ihrem Computer gebunden sind.
Dies war die Ursache für mein Problem, nachdem ich die verschiedenen anderen Lösungen in dieser SO - Frage und viele andere versucht hatte, wie zum Beispiel:
Als IIS express startete, versuchte es offensichtlich, sich an diese ungültige IP-Adresse zu binden. Das Update bestand darin, die ungültige IP-Adresse zu löschen. Diese zusätzliche Ungültigkeit stammt möglicherweise von meinem drahtlosen Heimnetzwerk, während mir bei der Arbeit eine andere IP-Adresse über den fest verdrahteten Adapter zugewiesen wird.
Eine Alleskönnerlösung besteht darin, alle IP-Adressen aus dem Registrierungsschlüssel zu löschen und netsh http add iplisten ipaddress=::
auszuführen, um das Abhören aller Adressen zuzulassen.
Ich konnte dieses Problem aufspüren, nachdem ich die folgenden Ereignisprotokolleinträge festgestellt hatte:
Möglicherweise wurde [√] Enabled SSL
für Ihr Projekt ausgewählt (siehe Registerkarte Debug
im Projekteinstellungsfenster), Visual Studio entscheidet jedoch, dumm zu sein und etwa http://localhost:32396
einzurichten. Der Grund dafür ist, dass 1. nicht HTTPS
ist und 2. das Zertifikat nicht gültig ist. Um dies zu erzwingen, müssen Sie einen Port im Bereich 44300-44398 verwenden.
Für mich war IIS Express nicht verfügbar, als ich iplisten
an der DOS-Eingabeaufforderung wie folgt hinzufügte: netsh http add iplisten MyIPAddress
. Ich habe es behoben, indem ich die Variable iplisten
wie folgt löschte: netsh http delete iplisten MyIPAddress
.
Und noch ein anderer Weg, um den gleichen Fehler zu bekommen:
Verwenden Sie 0.0.0.0
als IP-Adresse. Das funktioniert gut in der Produktion, hat aber bei IIS Express für uns versagt. Nachdem wir das in localhost in dev geändert hatten, wurde unser Problem gelöst.
ZU KLÄREN
Wirklich viele Antworten hier sind die gleichen und sagen etwas wie "Neustart und es funktioniert wieder auf magische Weise".
Nun, 9 von 10 Personen haben dieses Problem wie das OP, weil DIE IP-ADRESSE IS BEREITS VERWENDET WIRD.
ANTWORTEN
Es könnten 2 IP-Adressen verwendet werden. Beide finden Sie unter:
1) Klicken Sie mit der rechten Maustaste auf das Startprojekt
2) Klicken Sie auf "Eigenschaften"
3) Klicken Sie auf die Registerkarte "Debug"
Hier sehen Sie Ihre "App URL" und Ihre "SSL URL".
Wenn Ihre "App-URL" verwendet wird, ändern Sie sie einfach dort und speichern Sie sie. Sie sollte dann wieder funktionieren.
Wenn Ihre "SSL-URL" verwendet wird, schließen Sie VS, löschen Sie die Datei "applicationhost.config" im versteckten Ordner ".vs" Ihres Projekts und öffnen Sie VS erneut.
Windows 10 Defender Firewall blockierte es. Ich habe es ausgeschaltet, die mvc core 2.0-Anwendung ausgeführt und es hat funktioniert. Ich schaltete dann die Windows-Firewall wieder ein und es funktionierte nicht. Alle anderen Lösungen funktionierten zwar nicht für mich. Hoffe, das hilft jemandem da draußen.
Viele dieser Antworten behandeln das vorliegende Problem nicht vollständig. Das eigentliche Problem für mich war, dass ich zwei Bindungen über denselben Port in meiner applicationhost.config-Datei hatte UND den Port nicht für meine zweite (nicht lokale) Bindung geöffnet hatte . Mit VS können Sie unter diesen Umständen weiterhin ausgeführt werden, jedoch nur, wenn Sie sich im Administratormodus befinden (daher alle oben genannten Antworten).
Sie erstellen im Wesentlichen zwei IIS Express-Instanzen Ihrer App auf demselben Port. Wenn Sie also einen der Ports in Ihrer applicationhost.config-Datei ändern, können Sie fortfahren. Es gibt jedoch zwei verschiedene applicationhost.config-Dateien. Sie sollten diejenige auswählen, die die Bindungs-IP und den Bindungs-Port aufweist, die in den Eigenschaften Ihres Projekts angezeigt werden
Wechseln Sie zu dem Ordner, in dem Sie Ihre Projektlösung und die Projektordner sehen können (verdeckte Elemente im Datei-Explorer anzeigen). Navigiere in deinen versteckten .vs Ordner -> "YourAppName" Ordner -> config. Es sollte die Bindungsinformationen enthalten, die Sie in den Eigenschaften Ihres Projekts gesehen haben.
Beispiel:
<bindings>
<binding protocol="http" bindingInformation="*:7000:127.0.0.1" />
<binding protocol="http" bindingInformation="*:7000:192.168.0.5" />
</bindings>
Ändern Sie eine dieser Portnummern in eine andere als "7000", damit Sie nicht versuchen, denselben Port zu verwenden.
In meinem Fall verwende ich eine 192-Adresse, die keine localhost-Adresse ist. Daher muss ich einige netsh-Befehle verwenden, um diesen Port und die IP-Adresse zu öffnen. Hier ist ein Link , das zeigt, wie Ports für IIS Express geöffnet werden, um eine Remoteverbindung zu ermöglichen. Das Ausführen als normaler Benutzer funktioniert nur, wenn Sie die aufgeführten netsh-Befehle ausführen.
Hier sind die Netsh-Befehle:
Kopieren Sie diese Befehle und führen Sie sie in cmd mit ADMIN-Berechtigungen sowie IHRER IP-Adresse und Portnummer aus.
Ich hatte dieses Problem auf .net Core 2.1, Visual Studio Version 15.9.6. Als ich den Ordner .vs gelöscht habe, habe ich Visual Studio wieder geöffnet. Die Lösung, die für mich funktioniert hat:
Ich habe die Installation von Visual Studio 2017 repariert und es hat wieder funktioniert
Ich verwende VS2017, dann deaktiviere ichTool > Options > Debugging > Enable JavaScript debugging for ASP.NET
.
Ändern Sie einfach alle Portnummern in neue von allen funktionierenden Serien. Ändern Sie nicht den Anwendungshost .config ...