IE funktioniert nicht mit localhost + port

Ich habe einen NodeJS-Server, der zu Entwicklungszwecken auf meinem lokalen Computer ausgeführt wird. Standardmäßig verwendet es Port 1337. (Ich habe eine Handvoll anderer Ports wie 8080, 1234, 9000, 9090, 65432 usw. ausprobiert).

Ich kann erfolgreich eine Verbindung zu diesem NodeJS-Server von Chrome, Firefox und Opera herstellen. Wenn ich jedoch versuche, eine Verbindung mit Internet Explorer 11 herzustellen, wird "Diese Seite kann nicht angezeigt werden" angezeigt (siehe Bild).

geben Sie hier die Bildbeschreibung ein

Ich habe eine Vielzahl von "Lösungen" ausprobiert und mehrere angesehen Fragen/Antworten auf dieser Seite. Keiner von ihnen hat gearbeitet. Einschließlich:

  • ich habe versucht, 127.0.0.1
  • Ich habe "Geschützter Modus" und "Erweiterter Schutzmodus" deaktiviert."
  • Ich habe der Intranetzone und der vertrauenswürdigen Zone "localhost" hinzugefügt.
  • Ich habe "Freundliche HTTP-Nachrichten" deaktiviert, in der Hoffnung, mehr Details zu sehen.
  • Ich habe versucht, meinen Computernamen und DNS-Namen zu verwenden.
  • Ich habe versucht, einen manuellen Eintrag in meiner Hosts-Datei für "localhost" zu erstellen und sogar "thisismyfrigginpc" mit meiner IPv4-Adresse.

Der einzige Erfolg, den ich hatte, ist, wenn der Server an Port 80 läuft (http://localhost:80/ oder http://localhost). Ich kann jedoch aus verschiedenen Gründen nicht auf Port 80 entwickeln. Ich muss meinen Code auf localhost+Port testen (einige Ports, andere Ports als 80 und 443).

Fragen und Antworten, die nicht helfen:

Bitte Helfen Sie!

BTW, mit Windows 7 Enterprise 64-bit. Unternehmensbereitstellung, aber ich habe Administratorrechte. Die Netzwerkkonfiguration ist ziemlich Standard DHCP ohne NAT und ohne Proxy.

UPDATE

Auf Empfehlung von @codenoire habe ich Fiddler installiert, um die Anfrage - /Antwort. Nachfolgend finden Sie die rohe Anfrage und Antwort von IE-to-Fiddler-to-server-to-Fiddler:

Anfrage

GET http://localhost:1337/common/test.html HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Host: localhost:1337

Antwort

HTTP/1.1 200 OK
Set-Cookie: _session=WRuVLmrXMtjnDJY8;expires=Wed, 15 Jan 2014 23:19:16 GMT;path=/;domain=;httponly
Content-Type: text/html;charset=utf-8
Last-Modified: 1389818856000
Date: Wed, 15 Jan 2014 22:19:16 GMT
Connection: keep-alive
Content-Length: 128

<html>
<head>
    <title>Connectivity Test Page</title>
</head>

<body>

<h1>This is a test page.</h1>

</body>

</html>

Ergebnis

geben Sie hier die Bildbeschreibung ein

Update 2014-01-17

Ich habe dieses Szenario auf "sauberen" Nicht-Corporate Windows 7-Installationen mit IE 11 getestet. Die Ergebnisse sind identisch mit meinen ständigen Beobachtungen. Dies bedeutet, dass jede Konfiguration, die von einem Corporate Image von Windows vorgenommen wird, sein kann als Ursache beseitigt. Außerdem ist die Netzwerkkonfiguration ziemlich "Vanille"."

Update 2014-01-21

Ich habe versucht, den Internet Explorer" Emulation " Ideen. Ich habe einen Schlüssel erstellt, " iexplorer.exe " als DWORD-und QWORD-Werte (einzeln) mit den Werten 8000, 8001, 9000, 9001, 10000, and 10001. Nach jedem Neustart und erneut getestet. Alle diese Versuche führten zu den gleichen Ergebnissen. Nebenbei müssen wir diesen Code in IE11 testen. Die verschiedenen Kompatibilitätscode und Tricks helfen uns nicht wirklich auf lange Sicht laufen.

Update 2014-01-22

Hat einen XAMPP Apache Server an Port 1337 angezündet. IE verbindet sich gut damit. Es gibt also etwas an der NodeJS-Antwort, das der IE nicht mag, und die anderen Browser scheinen gut damit umzugehen. Wir werden unseren NodeJS-Code untersuchen, um zu sehen, was genau in den Headern/Inhalten passiert, um festzustellen, ob etwas nicht in Ordnung ist.

Update 2014-01-27: Auflösung

Ich wollte nur die Ergebnisse dokumentieren. Original antwort enthalten Content-Type: text/html;charset=utf-8 und basierend auf der richtigen Antwort sollte es sein: Content-Type: text/html; charset=utf-8 mit einem Leerzeichen zwischen dem Typ und dem Zeichensatz.

Hier sind die Ergebnisse:

geben Sie hier die Bildbeschreibung ein

Rohe Antwort:

HTTP/1.1 200 OK
Set-Cookie: _session=EshWS7xDnCeV9pXS;expires=Mon, 27 Jan 2014 18:49:21 GMT;path=/;domain=;httponly
Date: Mon, 27 Jan 2014 17:49:21 GMT
Last-Modified: 1389818856000
Content-Type: text/html; charset=UTF-8
Content-Length: 128
Connection: keep-alive

<html>
<head>
    <title>Connectivity Test Page</title>
</head>

<body>

<h1>This is a test page.</h1>

</body>

</html>

Danke an @harrymc für die Aufdeckung der Antwort.

Author: Community, 2014-01-15

4 answers

Der WWW3-Artikel Festlegen des HTTP-Zeichensatzparameters gibt an:

Content-Type: text/html; charset=utf-8

Dies definiert Content-Type als Leerzeichen vor charset.

Ich weiß, dass Sie bereits herausgefunden haben, dass dies tatsächlich das Problem ist, so ist die Quelle des Problems einige sehr einfallslos programmierung durch Microsoft oder durch einen Mittelmann-Proxy.

 9
Author: harrymc,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-11-04 20:36:08

Es gibt wahrscheinlich ein Problem in Ihren Einstellungen für IE.

Der einfachste Weg, dies zu beheben, besteht darin, Internetoptionen zu öffnen, zur Registerkarte Erweitert zu wechseln und auf "Internet Explorer-Einstellungen zurücksetzen"zu klicken. Stellen Sie sicher, dass Sie das auswählen und nicht "Erweiterte Einstellungen zurücksetzen", da diese nicht ALLE Einstellungen umfasst.

Wenn dies nicht funktioniert, versuchen Sie bitte auch, mit 127.0.0.1 anstelle von localhost zu navigieren. Dies wird das Problem wahrscheinlich nicht lösen, könnte aber manchmal eine Problem.

Edit: ich wollte hinzufügen, dass dies ein Problem mit IE11. Ich weiß, dass wir viele Kompatibilitätsprobleme damit hatten. Wenn Sie kein Rollback auf IE10 durchführen und dies versuchen möchten, können Sie dies jederzeit aus der Registrierung emulieren:

Unter

HKLM\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\

Sie erstellen einen Schlüssel mit dem Namen:

FEATURE_BROWSER_EMULATION

Und erstellen Sie darin einen DWORD-Wert:

iexplorer.exe

Mit einem Wert von einem der folgenden:

 IE8 - 8000 (or 8001)
 IE9 - 9000 (or 9001)
 IE10 - 10000 (or 10001)

Wir hatten den größten Erfolg mit 10001.

 3
Author: WreithKassan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-01-21 17:15:41

Überprüfen Sie Ihre proxy Einstellungen. Da Sie sich in einem Unternehmensnetzwerk befinden, wird möglicherweise eine unzureichende Proxy-Richtlinie in Ihren IE verschoben (die nicht unbedingt in die anderen Browser gespiegelt wird).

 1
Author: Xavier J,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-01-15 21:16:41

Ich mache diese Änderungen und alles funktioniert gut unter Windows 10 64 Bit.

geben Sie hier die Bildbeschreibung ein

geben Sie hier die Bildbeschreibung ein

 -1
Author: user728452,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-15 15:28:10