Pourquoi Microsoft Bord de l'ouverture de certains sites web, mais pas d'autres, d'où le nom de domaine est acheminé à l'adresse 127.0.0.1 dans le fichier hosts
Comme beaucoup de programmeurs, je test de sites locaux.
J'utilise le fichier hosts pour mapper les noms de domaine vers mon ip locale (127.0.0.1).
- Je utiliser qualifié du nom de domaine, généralement avec un "d" sous-domaine (pour le "développement").
Par exemple:
d.somewebsite.com
d.anotherwebsite.com
and so on...
Dans Microsoft bord, la plupart des sites web de travail. Cependant, un couple d'entre eux ne le font pas. Il n'y a rien de spécial ou de bizarre sur les noms de domaine qui ne fonctionne pas. Juste un simple d.someletters.com
.
Qu'ils fonctionnent très bien dans Chrome, IE et Firefox.
À Bord, j'obtiens le message d'erreur:
"Hmm, nous ne pouvons pas accéder à cette page."
Au début, je pensais que ce n'était pas la résolution de la propriété intellectuelle. Cependant, j'ai réalisé quand j'ai fait une faute de frappe sur un autre non liées à l'url, que les demandes qui ne sont pas acheminés par le fichier hosts sont envoyés à mon fournisseur de services internet pour être résolu. Si mon fournisseur d'accès internet ne peut pas le résoudre, ils renvoient spéciale, une page de résultats de recherche avec les suggestions de ce que vous pouvez essayer de trouver. Eh bien, quand je vais à mon domaine local, je n'ai pas cette page de mon fournisseur d'accès internet. Je reçois le message d'erreur mentionné ci-dessus directement à partir du bord.
Donc, il me semble que le Bord est de résoudre le domaine correctement, sinon, il aurait été envoyé à mon fournisseur de DNS.
Donc, je pense alors que peut-être Bord ne peut pas se connecter à la machine locale. Mais comme je l'ai dit, plusieurs de ces domaines locaux de travail de l'amende. Aussi, en utilisant 127.0.0.1 directement en Bord fonctionne également. C'est juste ces quelques noms de domaine, me donnant un problème. Et uniquement en Edge (tous les autres navigateurs) des idées?
Le serveur web Apache2 pour Windows (xampp) si ce qui compte.
Aussi, si j'ouvre la fenêtre de débogage de Bord et de surveiller le réseau, je ne vois pas de demande de sortir à tous.
EDIT: je ne suis plus en utilisant le fichier hosts. J'ai dnsmasq en cours d'exécution sur une de mes machines Linux et je suis à l'aide de DNS au lieu d'hôtes. Aussi n'est plus à l'aide de bouclage (bien évidemment puisque le DNS est sur une autre boîte), je suis en utilisant un interne adresse ip privée (192.168...). Même problème.
- Assez sûr qu'il a quelque chose à voir avec les paramètres d'affichage de Compatibilité similaire à IE. Je peux basculer d'avant en arrière sur IE. Vous ne savez pas où l'option est sur le bord.
- Je pense que vous utiliser ceci: microsoft.com/en-us/download/... , j'essaie maintenant de voir si ces domaines sont dans la liste pour une raison...
- Merci pour votre aide, mais je ne pense pas que ce qu'il est. Je n'ai pas tous les sites dans mes listes de compatibilité pour IE ou de l'Entreprise "Mode" (le Bord de la compatibilité du système de truc)
- Désolé vraiment pas sûr.
- Il suffit de venir sur ce problème moi-même. Aucun des correctifs décrits ici travaillé, mais j'ai ouvert le Violoneux (HTTP debugger) et puis il a bien fonctionné. Ainsi, une solution consiste à installer le Violoneux, et de l'avoir toujours ouvert lors de l'essai de Bord. Mais je ne suis pas sûr de savoir comment Fiddler est à faire des travaux de Pointe - si Edge n'a pas l'habitude d'envoyer la demande, alors pourquoi serait ajouter un proxy pour le faire envoyer la demande?
- Ouverture de la Fiddler était la seule chose qui a fonctionné pour moi. Je ne peux pas comprendre comment c'est possible, mais je peux vivre avec l'ouverture de la Fiddler à chaque fois, donc je suis enfin aller de l'avant. Merci Dave Kennard!
- Quelqu'un peut-il confirmer qu'il fonctionne avec n'importe quel proxy ou si c'est quelque chose de spécial à propos de fiddler?
- Fiddler a la possibilité d'exempter de bouclage de blocage, permettant à une machine de communiquer avec lui-même. Il est déplorable que l'application d'un tiers est nécessaire d'avoir le navigateur de Microsoft travail avec son propre système d'exploitation.
- Je pense que cette réponse semble prometteur: stackoverflow.com/a/45102895/546833
- Toujours en panne: Microsoft ne voulez pas que n'importe quel développeur de tests sur leur brillant IE remplacement du navigateur ????
Vous devez vous connecter pour publier un commentaire.
Votre réseau peut bloquer bouclage d'une mesure de sécurité dans Windows 10.
Ouvrez une invite de commande en tant qu'administrateur et exécutez la commande suivante pour exempter Bord d'un bouclage:
(
Microsoft.MicrosoftEdge_8wekyb3d8bbwe
est l'identifiant de la Pointe de l'app)Il y a un blog qui donne ici plus en détail:
https://blogs.msdn.microsoft.com/msgulfcommunity/2015/07/01/how-to-debug-localhost-on-microsoft-edge/
Get-AppxPackage
. C'est vraiment bizarre, que le Allow localhost loopback option dansabout:flags
ne fonctionne pas dans cette situation et dans certains autres similaire à ceci (comme localhost proxy pour les adresses locales par exemple). MaisCheckNetIsolation
fonctionne comme un charme.Je (pensais-je) résolu!
Des choses qui ne fonctionnent pas:
La Solution: dans une complète contre-intuitif twist:
Supprimer les noms de domaine à partir de votre sites de confiance liste!
Je tiens à noter que j'ai, avec du bon-sens, de l'pensé que ce n'était pas seulement le fait que le site était simplement présent dans les "Sites de Confiance" de la zone qui a causé le problème. J'ai pensé que c'était un réglage sur cette zone. Donc, avant j'ai supprimé les noms de domaine à partir de la "sites" de la liste, j'ai fait tous les réglages correspondent à mon Internet des paramètres de la Zone exactement (Moyenne de haute sécurité, activer le mode protégé, ne pas exiger un serveur sécurisé pour tous les sites), et j'ai aussi essayé toutes les combinaisons que j'ai pu trouver. Il n'y avait pas de combinaison de paramètres de sécurité de zone qui ont travaillé. La seule solution a été de supprimer simplement les domaines à partir de la liste de Sites de Confiance complètement. Le plus drôle est qu'il fonctionne sous IE, peu importe, même si c'est l'internet boîte de dialogue paramètres de IE. Cela ne semble affecter à Bord.
EDIT:
Deux semaines plus tard, j'ai changer ma configuration, au lieu de le fichier hosts, utiliser dnsmasq sur un Linux local de la machine et de l'utiliser pour le serveur DNS. Je ne suis pas sûr si c'est arrivé tout de suite, mais à un certain point, Bord cessé de travailler à nouveau! J'ai déjà eu l' "permettent de bouclage" case cochée dans about:flags, donc je ne m'attends pas le CheckNetIsolation correctif pour. Mais, il l'a fait. Version de bord est 20.10240.16384.0. J'ai utilisé la correction du Ne peut pas ouvrir localhost dans Microsoft Edge (Projet Spartan) dans Windows 10 preview
EDIT #2
Un couple de mois plus tard, et le Bord est d'avoir ce problème à nouveau. J'ai essayé les deux solutions précédentes (et d'autres) et aucun d'eux ne fonctionne plus pour moi.
Je pars de cette réponse parce que je suis en supposant que j'ai connu deux problèmes séparés.
CheckNetIsolation LoopbackExempt -a -n="Microsoft.MicrosoftEdge_8wekyb3d8bbwe"
dans une invite de commande élevée corrige.Bord n'est pas en charge les adresses IP VPN de sorte que toute solution doit utiliser une sorte de proxy. Voici quelques solutions que j'ai trouvé du travail:
Installer et exécuter
fiddler
. Fiddler va intercepter la demande à partir du navigateur, puis le transmettre à la destination. C'est la méthode la plus simple solution de contournement.Configurer un proxy via le Windows de l'outil:
netsh
. Les étapes de base impliquent l'assignation de votre développement domaine à un local adresse IP privée dans le127.0.0.0/8
à la plage, la cartographie de cette IP du serveur IP sur le réseau VPN. Voir les instructions étape par étape iciUtiliser la fonction de redirection de port de ssh configuration d'un proxy. En supposant que le port 80 est disponible sur localhost, ajouter
127.0.0.1 d.somewebsite.com
à votre hébergeur de fichier, puis exécutez ce qui suit, la commande ssh:ssh -L localhost:80:localhost:80 user@devwebserver
, oùdevwebserver
est le nom d'hôte de votre serveur web de développement (mot à dire dans la machine virtuelle ou l'errance d'une instance, ou à travers le VPN). Cette option suppose que vous avez un accès ssh au serveur de dev.Votre "supprimer à partir de sites de confiance" solution n'a pas fonctionné pour moi parce que mes sites locaux n'étaient pas sur mes sites de confiance.
Mais vous avez fait en me regardant les Options Internet et j'ai réussi à obtenir IIS de travail pour sites locaux, pour moi sur Windows 10. C'est ce que j'ai fait:
Quand cela m'arrive je peux trouver une entrée de domaine dans la clé de registre ci-dessous qui correspond au domaine. Quand j'ai enlever les choses fonctionnent, pour un moment... je ne sais pas pourquoi, mais Edge le rajouter par la suite.
Ordinateur\HKEY_USERS\S-1-5-21-964789662-521690395-1734141374-1111\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Storage\microsoft.microsoftedge_8wekyb3d8bbwe\MicrosoftEdge\TabProcConfig
TabProcConfig
en vertu de ce chemin (pour l'utilisateur actuel, l'utilisateur spécifié n'existe pas).Peuvent ne pas s'appliquer à votre situation, mais tout de même. Ma configuration est comme suit. Un espace public (adresse internet) de la page a été d'essayer de charger une page avec un espace privé adresse (intranet) dans une iframe et Edge serait refuser de charger la page intranet avec le même "Hmm, nous ne pouvons pas accéder à cette page" message", et avec "SEC7117 Erreur" dans la console de débogage. S'avère Bord n'aime pas le mélange internet/intranet zones (voir Comprendre Le Mode Protégé sur le blog pour les raisons). Edge s'exécute onglets distincts AppContainers, et AppContainer réseau restrictions sont sensibles à la configuration de votre réseau.
Ma solution a été de prendre le serveur où est hébergé la page intranet du réseau de domaine par l'affectation d'un deuxième espace privé propriété intellectuelle, et créer une deuxième entrée DNS pour que la propriété intellectuelle. Le serveur finit par avoir 2 IPs: l'un sur le réseau de domaine et un autre et 2 entrées DNS. Le bord est souligné l'alternative URL et qu'il commence à charger la page intranet de l'amende juste. Il semble que tant que l'IP, les masques de l'ordinateur et de l'URL de la page en question ne correspondent pas, Edge va charger la page.
Le blog je l'ai mentionné a des infos sur le Bouclage bloqué pour localhost et le manque de fonctionnalité privateNetworkClientServer dans IE. Aussi loin que je peux dire à tous que l'info s'applique à Bord.
<html><body>hello</body></html>
Mon nom de votre machine ne comporte pas de nom de domaine (pas qualifié). Aussi, je peux accéder à plusieurs sites en utilisant le fichier hôte. Juste pas celui-ci. Donc, d.test1.com et d.test2.com les deux fonctionnent, mais celui-ci, t.test3.com, ne fonctionne pas. Il fonctionne très bien dans d'autres navigateurs.Aucune des autres solutions n'a fonctionné pour moi. Il s'avère que mon problème est lié à un VPN. Microsoft Edge n'est toujours pas en charge les adresses IP VPN, tandis qu'Internet Explorer 11. Impressionnant que c'est encore une question de Mai 2016.
Détails Supplémentaires:
https://social.technet.microsoft.com/Forums/en-US/b3a687ae-345d-4c3f-9070-184b33fb1fc6/microsoft-edge-cant-access-vpn-ip-address-but-ie-11-can?forum=win10itprogeneral
Dans mon cas, changer le type de réseau du secteur privé au secteur public a fait le tour. C'est également reproductible et de changer le type de réseau fiable les changements de l'état de "travail" pour obtenir:
Http failure response for (unknown url): 0 Unknown Error
En notant de votre travail d'édition que vous avez désormais accès au site sur 192.168.0.0/16 adresse, plutôt que sur 127.0.0.1, je devine que vous êtes en cours d'exécution dans un problème avec la façon dont le Bord navigateur se comporte différemment en fonction de l'interface utilisée pour accéder au site. D'autres navigateurs, j'ai essayé de ne pas se comporter de cette façon.
Dans mon environnement, j'ai eu une Virtualbox host-only network setup et cela a eu un NdisDeviceType de 1. Edge serait seulement me permettre d'accéder à des sites sur cette interface après j'ai changé NdisDeviceType à 0. La clé de registre que vous avez besoin est:
Au lieu de XXXX, vous avez besoin de la clé appropriée pour votre interface, qui, selon moi, de "route print" et soustrait 1. Pour moi, c'était "0016".
La valeur à modifier est appelé
*NdisDeviceType
. (C'est un littéral astérisque.) Je l'ai changé de 0 à 1 et dû redémarrer pour Windows à noter le changement.Ma réponse a été glanée à partir d'un post par "Jani L" datée du 3 octobre, en 2017. J'ai aussi posté cette solution plus en détail à une autre question stackoverflow. Voir aussi un Virtualbox billet 15565.
Pour moi, je suis allé dans les Options Internet (panneau de configuration), puis Sécurité, puis sélectionné intranet local puis mettez une croix dans la "détecter Automatiquement le réseau intranet". Cette grisé imbriquées les options ci-dessous, et le Bord immédiatement commencé à utiliser mon fichier hosts.