550 Stimmen

Wie aktiviert man externe Anfragen in IIS Express?

Wie kann ich Fernabfragen in IIS Express aktivieren? Scott Guthrie schrieb, dass dies möglich ist aber er hat nicht gesagt, wie.

35 Stimmen

Dafür gibt es eine kostenlose VS-Erweiterung, die wir geschrieben haben visualstudiogallery.msdn.microsoft.com/

0 Stimmen

@JimW Jim, sind Sie der Ersteller des Plugins? Könnten Sie bitte erklären, wie dieses Wunderwerk der Softwaretechnik funktioniert?

0 Stimmen

@IanWarburton Danke, dass Sie es ein Wunder nennen! Es ist ein Reverse-Proxy-Server.

12voto

Emmanuel Punkte 5358

Was mir geholfen hat, war ein Rechtsklick auf das IISExpress-Symbol, "Alle Anwendungen anzeigen". Dann wählte ich die Website aus und sah, welche aplicationhost.config sie verwendet, und die Korrektur ging perfekt.

IISExpress configuration

2 Stimmen

Diese Antwort wies mich auf eine andere Lösung hin, nämlich die Bearbeitung der Datei applicationhost.config, um Folgendes zu akzeptieren :55665: anstelle von *:55665:localhost

0 Stimmen

Danke @Deko -- dein Kommentar, zusammen mit dem netsh-Befehl, der in einigen anderen Antworten erwähnt wurde, hat es bei mir funktioniert.

10voto

Artur Kędzior Punkte 3765

Die einfachste und coolste Methode, die ich gefunden habe, ist die Verwendung (die Einrichtung dauert 2 Minuten):

https://ngrok.com/

Es funktioniert mit allem, was auf localhost läuft. Melden Sie sich einfach an, führen Sie das kleine excutable aus und was immer Sie auf localhost ausführen, erhält eine öffentliche URL, auf die Sie von überall zugreifen können.

Das ist gut, um Ihren entfernten Teamkollegen etwas zu zeigen, ohne sich mit IIS-Einstellungen oder Firewalls herumschlagen zu müssen. Wenn Sie den Zugriff stoppen möchten, beenden Sie einfach die ausführbare Datei.

ngrok authtoken xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

ngrok http -host-header=localhost 89230

unter der Annahme, dass 89230 Ihr IIS-Express-Port ist

Sie können auch mehrere Ports betreiben, sogar mit einem kostenlosen Tarif

1 Stimmen

Wer hätte gedacht, dass ich mir so viele Antworten durchlesen muss, bis ich eine Lösung finde...

3 Stimmen

Mann, ich hätte ngrok fast weggeworfen, weil ich immer eine Bas Request 400 Invalid hostname . Verwendung von -host-header gelöst. Vielen Dank!

9voto

Bruce Punkte 2110

Wenn Sie versucht haben Colonel Panic's Antwort aber in Visual Studio nicht funktioniert, versuchen Sie dies:

Anhängen einer weiteren <binding /> in Ihrer IIS Express-Konfiguration

<bindings>
    <binding protocol="http" bindingInformation="*:8080:localhost" />
    <binding protocol="http" bindingInformation="*:8080:hostname" />
</bindings>

Schließlich müssen Sie Visual Studio als Administrator ausführen

0 Stimmen

Leider scheint das bei mir nicht zu funktionieren. Ich bekomme immer noch die Verbindung verweigert, wenn ich versuche, auf meine lokale IP auf Port 8080 zuzugreifen

0 Stimmen

@ThomasTeilmann, in Visual Studio musste ich die Eigenschaften der Webanwendung öffnen und auf der Registerkarte "Web" die "Projekturl" so ändern, dass der alternative Hostname anstelle von localhost verwendet wird.

0 Stimmen

@ThomasTeilmann, Oh, und ich glaube, Sie müssen nach dem Hostnamen und nicht nach der IP-Adresse suchen.

5voto

Chad Punkte 2308

Die akzeptierte Antwort auf diese Frage ist eine Anleitung, wie man IIS Express mit webmatrix zum Laufen bringt. Ich fand dieser Leitfaden nützlicher, wenn Sie versuchen, es mit VS 2010 zum Laufen zu bringen.

Ich habe einfach die Schritte 3 und 4 befolgt (IIS Express als Administrator ausgeführt) und musste meine Firewall vorübergehend deaktivieren, damit es funktioniert.

0 Stimmen

In der Anleitung, auf die Sie verweisen, fehlt die Möglichkeit, von Visual Studio aus zu debuggen, was es zumindest meiner Meinung nach sinnlos macht - die Verwendung von IIS oder eines anderen Remote-Servers wäre genauso gut oder besser (weil man zumindest Remote-Debugging auf IIS einrichten könnte). Wenn IIS Express keine Admin-Rechte benötigt, um ohne localhost zu laufen, würde dies einfach funktionieren. Sehr ärgerlich.

0 Stimmen

Das ist genau das, wonach ich gesucht habe - danke! Ich verwende IIS Express mit Visual Studio 2010 und wollte eine ASP.NET MVC3-Anwendung in meinem LAN testen, und das war genau das, was ich brauchte, damit das funktioniert :)

5voto

srmrco Punkte 96

Sie können versuchen, eine Portweiterleitung einzurichten, anstatt zu versuchen, Ihre IIS Express-Konfiguration zu ändern, neue HTTP.sys-Regeln hinzuzufügen oder Visual Studio als Administrator auszuführen.

Im Grunde müssen Sie die IP:PORT Ihre Website läuft auf einem anderen freien Port auf Ihrem Rechner, aber auf dem externen Netzwerkadapter, nicht auf localhost.

Die Sache ist die, dass IIS Express (zumindest unter Windows 10) sich an [::1]:port was bedeutet, dass er auf dem IPv6-Port lauscht. Dies müssen Sie berücksichtigen.

Ich habe das folgendermaßen gelöst - http://programmingflow.com/2017/02/25/iis-express-on-external-ip.html

Ich hoffe, es hilft.

0 Stimmen

Ich verwende Windows 10 und die Bindung von localhost an IPv6 war der Schlüssel. Danke!

0 Stimmen

Der Computer, den ich zu konfigurieren versuchte, hatte eine andere lokale Adresse. Sie lautete "local-dev". Ich musste nur die Adresse add v4tov6 listenport=3000 connectaddress=local-dev connectport=60000 damit es funktioniert. Toller Beitrag, danke!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X