it-swarm.com.de

Google Chrome leitet localhost an https um

Beim Debuggen eines Visual Studio-Projekts mit Chrome versucht der Browser, zur https-Entsprechung meiner Webadresse umzuleiten. Ich habe SSL nicht im Webprojekt aktiviert und die Start-URL ist die http-URL. Beim Debuggen mit FireFox oder IE habe ich dieses Problem nicht.

Ich habe Chrome erneut installiert, wodurch das Problem für einen Tag behoben wurde. Ohne Addons herunterzuladen, trat das Problem am nächsten Tag erneut auf.

Was macht Chrome dazu, Localhost an https umzuleiten?

Network Inspect zeigt: Anforderungs-URL: Daten: Text/HTML, Chromewebdata Anforderungsheader Vorläufige Header werden angezeigt Benutzeragent: Mozilla/5.0 (Windows NT 6.3; WOW64) KHTML, wie Gecko) Chrome/36.0.1985.143 Safari/537.36

Keine Vorschau und keine Antwortdaten in diesen Registerkarten.

275
Brett Mathe

Ich glaube, dass dies durch HSTS verursacht wird - siehe http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security

Wenn Sie andere localhost-Sites (entwickelt) haben, die einen HSTS-Header senden ...

z.B. Strict-Transport-Security: maximales Alter = 31536000; includeSubDomains; Vorspannung

... dann müssen zukünftige Anforderungen an localhost abhängig vom Wert von max-age über HTTPS abgewickelt werden. 

Um dies zu umgehen, habe ich Folgendes getan. 

  • In der Adressleiste von Chrome geben Sie "chrome: // net-internals/# hsts" ein.
  • Ganz unten auf einer Seite befindet sich das Textfeld QUERY-Domäne. Vergewissern Sie sich, dass localhost dem Browser bekannt ist. Wenn "Nicht gefunden" angezeigt wird, ist dies nicht die Antwort, die Sie suchen.
  • Wenn dies der Fall ist, LÖSCHEN Sie die localhost-Domäne mithilfe des obigen Textfelds
  • Ihre Site sollte jetzt mit normalem alten HTTP funktionieren

Dies ist keine dauerhafte Lösung, bringt sie aber zumindest zwischen den Projekten zum Laufen. Wenn jemand weiß, wie localhost dauerhaft von der HSTS-Liste ausgeschlossen werden kann, lass es mich wissen :)

UPDATE - November 2017

Chrome hat diese Einstellung kürzlich verschoben, so dass sie unter Domain-Sicherheitsrichtlinien löschen gesetzt wird.

 enter image description here

UPDATE - Dezember 2017 Wenn Sie die .dev-Domain verwenden, sehen Sie die anderen Antworten unten, da Chrome (und andere) HTTPS über vorinstalliertes HSTS erzwingen.

432
BigJump

Ich habe das gleiche Problem in Chrome erlebt und habe erfolglos versucht, BigJumps Lösung zu verwenden. 

Ich habe mein Problem behoben, indem ich eine harte Aktualisierung erzwang, wie in diesem blog gezeigt (ursprünglich von/ SuperUser answer ).

Stellen Sie sicher, dass Ihre Adressleiste das http-Schema verwendet, und führen Sie diese Schritte möglicherweise ein paar Mal aus:

  1. Öffnen Sie das Fenster "Developer Tools" (STRG + UMSCHALT + I). 
  2. Klicken und halten Sie das Reload-Symbol und klicken Sie mit der rechten Maustaste auf das Reload-Symbol. 
  3. Ein Menü wird geöffnet. 
  4. Wählen Sie die dritte Option aus diesem Menü ("Cache leeren und hartes Nachladen").
247
Adiyat Mubarak

NEUE ENTWICKLUNGEN! (wenn Sie Chrome 63+ haben)

Wenn Ihre localhost-Domain .dev ist, glaube ich nicht, dass die zuvor akzeptierten und funktionierenden Antworten nicht mehr zutreffen. Dies liegt daran, dass Chrome ab Chrome 63 .dev-Domains über vorgespanntes HSTS zu HTTPS zwingt. 

Das bedeutet, dass .dev grundsätzlich nicht mehr funktioniert, wenn Sie kein ordnungsgemäß signiertes SSL-Zertifikat haben - keine selbstsignierten Zertifikate mehr zulässig! Erfahren Sie mehr in diesem Blogeintrag.

Um dieses Problem jetzt zu beheben und zu vermeiden, dass dies in Zukunft erneut geschieht, ist .test eine empfohlene Domäne, da sie von IETF für Test-/dev-Zwecke reserviert wird. Sie sollten auch .localhost für local dev verwenden können.

175
Trevor

Ich habe das gleiche Problem, aber nur in Chrome Canary und bei der Suche nach einer Lösung, die ich gefunden habe: this post .

bei einer der nächsten Versionen von Chrome werden alle Domänen, die auf .dev (und .foo) enden, über einen vorab geladenen HTTP-Strict-Transport-Security-Header (HSTS) an HTTPs umgeleitet.

{ "name": "dev", "include_subdomains": true, "mode": "force-https" },
{ "name": "foo", "include_subdomains": true, "mode": "force-https" },

Ändern Sie also Ihre Domains.

47
rafawhs

Huckepack aus Adiyat Mubarak

Konnte nicht hart aktualisiert werden, da es nur auf https aktualisiert wurde. Folgt einigen der gleichen Schritte. 

1. Open chrome developer tools (ctrl + shift + i)
2. Network Tab at the top
3. Click Disable cache checkbox at the top (right under network tab for me).
4. Refresh page (while the developer tools is still open)
39
Steven Johnston

Bei Chrome 63 (seit Dezember 2017 nicht mehr erhältlich) werden alle Domänen, die auf .dev (und .foo) enden, über einen vorab geladenen HTTP-Strict-Transport-Security-Header (HSTS) an HTTPS umgeleitet. Weitere Informationen hierzu finden Sie hier.

18
Tai Ho

aus https://galaxyinternet.us/google-chrome-redirects-localhost-to-https-fix/

Keiner der Optionskorrekturen funktionierte für mich, für die Korrektur von https://localhost:3000.

klicken und halten Sie die Reload-Taste und wählen Sie Empty Cache and Hard Reload. Dies scheint nur eine Option für localhost zu sein.

9
user2167582

Ich habe auch mit diesem Thema zu kämpfen. Scheint, dass HSTS nur für Domainnamen gedacht ist. Wenn Sie also auf einem lokalen Computer entwickeln, ist die Verwendung der IP-Adresse viel einfacher. Also habe ich von localhost auf 127.0.0.1 gewechselt

6
siim

Ich habe nie die Ursache des Problems herausgefunden, konnte dieses Problem jedoch beheben. Ich löschte den Cache-Ordner der Google Chrome-App, der das Problem gelöst hat.

C:\Benutzer [Benutzer]\AppData\Local\Google\Chrome

6
Brett Mathe

Dies kann durch eine zwischengespeicherte https-Umleitung verursacht werden. Sie kann behoben werden, indem der Cache manuell gelöscht wird, wie in Adiyat Mubaraks Antwort.

Wenn Sie jedoch localhost besuchen, sind Sie wahrscheinlich ein Entwickler. In diesem Fall finden Sie eine Cache-Clearing-Erweiterung wie "classic cache killer" (siehe zB https://chrome.google.com/webstore/search/classic) % 20cache% 20killer? Hl = de ) nützlich in einer Vielzahl von Situationen und wahrscheinlich bereits installiert. 

Die schnelle Lösung lautet also: Installieren Sie einen Cache-Killer (wenn Sie noch keinen haben), aktivieren Sie ihn und laden Sie die Seite erneut. Erledigt! 

5
CalderBot

Nichts davon hat für mich gearbeitet. Es begann nach einem Chrome-Update (Version 63.0.3239.84, Linux) mit einer lokalen URL. Würde immer zu https umleiten, egal was. Ich habe einige Stunden und viel Geduld verloren

Was funktionierte, war nur das Ändern der Domäne. 

Für den Wert war die Domain .app. Vielleicht hat es etwas zu tun? Und es wurde einfach in .test geändert, und Chrome hat aufgehört, es umzuleiten

5
diogo.abdalla

Eine faule und schnelle Lösung für faule Leute wie mich (die in Chrome 67 arbeiten). 

Starten Sie einfach ein weiteres Chrome-Fenster in Stealth Mode mit der Option "Inkognito Window" (STRG + UMSCHALT + N). Keine Notwendigkeit, den Cache zu löschen, keine tiefen Chrome-Einstellungen usw.

1
spekdrum

Chrome 63 erzwingt die automatische Generierung von .dev-Domains mittels vorab geladenem HSTS zu HTTPS. 
Schnelle Lösung: Ändern Sie einfach die .dev-Domänen in .localhost. 

1
Wouter Schoofs

Gehen Sie zu Einstellungen in Chrome und dann zu Erweiterte Einstellungen. Klicken Sie unter Datenschutz und Sicherheit auf Browserdaten löschen und löschen Sie anschließend alle Daten. Ich folgte diesen Schritten und es funktionierte für mich. Hoffe es hilft jemandem.

0
user9143776

Leider hat mir keine der hier aufgeführten Lösungen geholfen, dieses Problem zu beheben. Ich habe dieses Problem behoben, indem ich http://127.0.0.1 (IP-Adresse) anstelle von http: // localhost verwendet habe. Ein schneller kleiner Hack, um mit der Winkelentwicklung mit Chrome-Browser zu arbeiten.

0

Dies ist keine Lösung, es ist nur eine Problemumgehung.

  1. Klicken Sie im Projektmappen-Explorer auf Ihr Visual Studio-Projekt (oberste Ebene) und rufen Sie das Eigenschaftenfenster auf.

  2. Ändern Sie SSL Enabled in true. Sie sehen jetzt eine andere Portnummer als 'SSL-URL' im Eigenschaftenfenster. 

  3. Wenn Sie jetzt Ihre Anwendung ausführen (oder in einem Browser anzeigen), müssen Sie die Portnummer manuell in die SSL-Portnummer in der Adressleiste ändern.

Jetzt funktioniert es gut als SSL-Link

0
0
Kobbi Gal