J'ai un serveur Web local en cours d'exécution auquel j'aimerais accéder en tant que myserver.localhost. J'ai donc ajouté une entrée.
127.0.0.1 myserver.localhost
à C:\Windows\System32\drivers\etc\hosts
. Cela a bien fonctionné.
Puis quelque chose s'est passé. Entre autres, j'ai dû désactiver le contrôle d'accès utilisateur Windows, mais je doute que ce soit la cause. Désormais, le système ne réagit plus aux modifications du fichier hosts. J'ai commenté l'entrée, ajouté de nouvelles entrées de test, vidé le cache DNS à plusieurs reprises, redémarré la machine, pris une pause, rien n'y fait.
nslookup retourne toujours 127.0.0.1 pour myserver.localhost et un domaine non existant pour toutes les entrées de test que j'ajoute. Pour moi, il semble que le fichier lui-même soit cassé d'une certaine manière (c'est juste un fichier texte, mais de toute façon ...) et Windows ne fonctionne pas avec ce dernier et ne renvoie donc que ce qu'il pense être le dernier bon résultat.
Quelqu'un a-t-il une idée de la façon de revenir à un fichier hôtes en fonctionnement sans avoir à réinstaller tout le système?
Il existe un malentendu général quant à l'interaction du fichier HOSTS dans Windows et de l'outil nslookup. La valeur que vous entrez dans le fichier HOSTS est celle qui est utilisée par le système lorsque vous établissez une connexion avec le nom de domaine que vous pourriez spécifier. Ceci est essentiellement codé en dur lorsque vous l’entrez dans le fichier HOSTS. Cependant, nslookup ignore le fichier HOSTS pour autre chose que localhost. Essayez ceci: ajoutez une entrée à votre fichier HOSTS et enregistrez le fichier. Faites un nslookup: il devrait retourner la vraie adresse IP (ou aucune si la vraie adresse n’existe pas). Cinglez maintenant l'hôte. Il convient d'envoyer une requête ping à l'adresse IP spécifiée dans le fichier HOSTS.
Je ne connais pas la raison exacte de ce comportement, mais j’estime que nslookup fait toujours une requête DNS et demande quoi que ce soit à
*.localhost
, il demande à la machine locale quelle est l’adresse (vous obtenez donc le résultat du fichier HOSTS ), mais pour toute autre chose, il demande au serveur DNS que vous avez configuré. Cette partie n’est que spéculation, mais le comportement que j’ai décrit est quelque chose que j’ai observé à maintes reprises.la source
Les changements à
etc\hosts
sont pris instantanément. Si cela ne fonctionne pas, alors vous éditez le mauvais fichier (par exemple, vous travaillez à distance et vous avez choisi le mauvais serveur par inadvertance pour le montage SMB) ou un virus interfère. Vérifiez que le scanner de virus est à jour et vérifiez tout votre système. Essayez un deuxième scanner de virus juste pour être en sécurité.la source
Vous devez éditer ce fichier en tant qu'administrateur. Sinon, vous ne pouvez pas le changer.
Appuyez simplement sur le bouton de démarrage - entrez cmd dans la zone de saisie de la recherche, cliquez avec le bouton droit de la souris sur cmd et exécutez-le en tant qu'administrateur. Entrez le bloc-notes et ouvrez à nouveau le fichier, apportez vos modifications et enregistrez.
C’est ainsi que vous devez utiliser Windows 7.
la source
Malheureusement, il n'y a pas de solution à ce problème ni de raison explicable pour la cause. Quelque chose a cassé le fichier et le seul moyen de le réparer semble être une réinstallation complète du système. Nous avons abandonné Windows comme plate-forme de développement pour migrer vers Mac et Linux.
la source