Lorsque je débogue un projet Visual Studio à l'aide de Chrome, le navigateur essaie de rediriger vers l'équivalent https de mon adresse Web. SSL n’est pas activé dans le projet Web et l’URL de départ est l’URL http. Lorsque je débogue en utilisant FireFox ou IE, je n'ai pas ce problème.
J'ai réinstallé Chrome, qui a résolu le problème pendant un jour. Sans télécharger aucun addon, le problème se reproduisit le lendemain.
Qu'est-ce qui fait que Chrome redirige localhost vers https?
Network Inspect indique: URL de la demande: données: text/html, chromewebdata En-tête de la demande KHTML, comme Gecko) Chrome/36.0.1985.143 Safari/537.36
Aucun aperçu et aucune donnée de réponse dans ces onglets.
Je pense que cela est dû au HSTS - voir http://fr.wikipedia.org/wiki/HTTP_Strict_Transport_Security
Si vous avez (développé) un autre site localhost qui envoie un en-tête HSTS ...
par exemple. Strict-Transport-Security: âge maximum 31536000; includeSubDomains; précharge
... puis, en fonction de la valeur de max-age, les demandes futures adressées à localhost devront être traitées via HTTPS.
Pour contourner cela, j'ai fait ce qui suit.
Ce n'est pas une solution permanente, mais au moins cela fonctionnera entre projets. Si quelqu'un sait comment exclure de manière permanente localhost de la liste HSTS, veuillez me le faire savoir :)
MISE À JOUR - Novembre 2017
Chrome a récemment déplacé ce paramètre pour s'inscrire sous Supprimer les stratégies de sécurité du domaine
UPDATE - Décembre 2017 Si vous utilisez le domaine .dev, reportez-vous aux autres réponses ci-dessous, car Chrome (et autres) forcent HTTPS via HST préchargé.
J'ai rencontré le même problème dans Chrome et j'ai essayé sans succès d'utiliser la solution de BigJump .
J'ai résolu mon problème en forçant une actualisation matérielle, comme indiqué dans ce blog (à l'origine de cette réponse SuperUser ).
Assurez-vous que votre barre d'adresses utilise le schéma http, puis suivez ces étapes, éventuellement plusieurs fois:
NOUVEAUX DÉVELOPPEMENTS! (si vous avez Chrome 63+)
Si votre domaine localhost est .dev
, alors je ne pense pas que les réponses acceptées précédemment et fonctionnelles ne s'appliquent plus. En effet, à partir de Chrome 63, Chrome forcera les domaines .dev à HTTPS via HST préchargé.
Cela signifie que .dev
ne fonctionnera plus du tout, à moins que vous n'ayez un certificat SSL dûment signé - aucun autre certificat auto-signé n'est autorisé! En savoir plus sur ce blog.
Donc, pour résoudre ce problème maintenant et éviter que cela ne se reproduise à l'avenir, .test
est un domaine recommandé car il est réservé par l'IETF à des fins de test/dev. Vous devriez également pouvoir utiliser .localhost
pour le dev local.
Je suis confronté au même problème, mais uniquement dans Chrome Canary et à la recherche d'une solution ayant trouvé ce message .
l'une des prochaines versions de Chrome va forcer tous les domaines se terminant par .dev (et .foo) à être redirigés vers HTTP via un en-tête HTTP préchargé Strict Transport Security (HSTS).
{ "name": "dev", "include_subdomains": true, "mode": "force-https" },
{ "name": "foo", "include_subdomains": true, "mode": "force-https" },
Alors changez de domaine.
Piggybacking Adiyat Mubarak
Impossible d'actualiser, car l'actualisation s'effectue simplement sur https. Suit certaines des mêmes étapes.
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)
Chrome 63 (sorti en décembre 2017) obligera tous les domaines se terminant par .dev (et .foo) à être redirigés vers HTTPS via un en-tête HTTP préchargé Strict Transport Security (HSTS). Vous pouvez trouver plus d'informations à ce sujet ici.
from https://galaxyinternet.us/google-chrome-redirects-localhost-to-https-fix/
Aucune des corrections d’option n’a fonctionné pour moi; cela a fonctionné pour la correction de https://localhost:3000
.
cliquez sur le bouton Reload
et maintenez-le enfoncé, puis sélectionnez Empty Cache and Hard Reload
. Cette option ne semble être qu'une option sur localhost
.
J'ai également été aux prises avec ce problème. Semble que HSTS est destiné uniquement aux noms de domaine. Donc, si vous développez sur une machine locale, il est beaucoup plus facile d'utiliser une adresse IP. J'ai donc passé de localhost à 127.0.0.1
Je n’ai jamais trouvé la source du problème, mais j’ai pu résoudre ce problème ... J'ai supprimé le dossier de cache de l'application Google Chrome, qui a résolu le problème.
C:\Utilisateurs [utilisateurs]\AppData\Local\Google\Chrome
Cela peut être dû à une redirection https en cache et peut être corrigé en effaçant le cache manuellement, comme dans la réponse d'Adiyat Mubarak.
Mais si vous visitez localhost, vous êtes probablement un développeur. Dans ce cas, vous trouverez une extension chromée d'effacement de cache telle que "classic cache killer" (voir par exemple https://chrome.google.com/webstore/search/classic % 20cache% 20killer? Hl = fr ) est utile dans une variété de situations et a probablement déjà été installé.
Donc, la solution rapide est la suivante: Installez un cache killer (si vous n'en avez pas déjà un), allumez-le et rechargez la page. Terminé!
Aucun de ceux-ci n'a fonctionné pour moi. Cela a commencé après une mise à jour de chrome (version 63.0.3239.84, linux) avec une URL locale. Serait toujours rediriger vers https, peu importe quoi. Perdu quelques heures et beaucoup de patience à ce sujet
Après tout, ce qui a bien fonctionné, c’était simplement changer de domaine.
Pour ce qui vaut la peine, le domaine était .app. Peut-être qu'il a quelque chose à faire? Et vient de le changer en .test et Chrome a cessé de le rediriger
Une solution paresseuse et rapide pour les paresseux comme moi (travaillant sous Chrome 67).
Il suffit de lancer une autre fenêtre Chrome dans Mode furtif , avec l’option "Fenêtre de navigation privée" (CTRL + SHIFT + N). Pas besoin de supprimer le cache, pas besoin de plonger dans les paramètres profonds de Chrome, etc.
Chrome 63 force les domaines .dev à passer automatiquement en HTTPS via HSTS préchargé.
Solution rapide: il suffit de changer les domaines .dev en .localhost.
Accédez aux paramètres dans Chrome, puis à Paramètres avancés, dans la section Confidentialité et sécurité, cliquez sur Effacer les données de navigation, puis sur toutes les données. J'ai suivi ces étapes et cela a fonctionné pour moi. J'espère que ça aide quelqu'un.
Malheureusement, aucune des solutions répertoriées ici ne m'a aidé à résoudre ce problème. J'ai résolu ce problème en utilisant http://127.0.0.1 (adresse IP) au lieu de http: // localhost . Un petit bidouillage rapide pour travailler avec le développement angulaire avec le navigateur chrome.
Ce n'est pas une solution, c'est juste une solution de contournement.
Cliquez sur votre projet Visual Studio (niveau supérieur) dans l'explorateur de solutions et accédez à la fenêtre des propriétés.
Définissez SSL activé sur true. Vous verrez maintenant un autre numéro de port comme "URL SSL" dans la fenêtre des propriétés.
Désormais, lorsque vous exécutez votre application (ou affichez-le dans le navigateur), vous devez modifier manuellement le numéro de port en numéro de port SSL dans la barre d'adresse.
Maintenant, cela fonctionne bien comme un lien SSL
Dans mon cas, mon chemin de projet était défini sur /Users/me/dev/project_root/
et le serveur nodeJS
/express
à partir de là . Renommer mon chemin en /Users/me/project_root
(suppression de dev
du chemin du projet) a résolu le problème.
Probablement à voir avec ce nouveau règlement:
Chrome 63 (sorti en décembre 2017) obligera tous les domaines se terminant par .dev (et .foo) à être redirigés vers HTTPS via un en-tête HTTP préchargé Strict Transport Security (HSTS).
Vous pouvez trouver plus d'informations à ce sujet ici .
En utilisant: