Ich versuche, google.com zum Spaß und zum Lernen mit dieser /etc/hosts-Datei auf meinem Mac auf meinen lokalen Computer umzuleiten.
127.0.0.1 www.google.com
Wenn ich www.google.com jedoch in Chrome auf meinem Mac besuche, wird es immer noch mit der Google-Startseite verknüpft. Warum?
Im Wesentlichen habe ich Folgendes getan:
- Geben Sie es
sudo vim /etc/hosts
in das Terminal ein. 127.0.0.1 www.google.com
In die Hosts-Datei eingegeben .- Gespeichert und vim beendet.
Antwort1
Die hosts
Datei funktioniert auf diese Weise nicht. Sie können sie nur verwenden, um Hostnamen IP-Adressen zuzuordnen, nicht localhost
.
In Ihrem Fall würden Sie verwenden 127.0.0.1 www.google.com
, d. h. www.google.com der Adresse 127.0.0.1 zuordnen.
Wenn Sie einer einzelnen IP mehrere Hostnamen zuordnen möchten, fügen Sie diese Hostnamen einfach in derselben Zeile hinzu, z. B. 127.0.0.1 www.a.com www.b.com
.
Antwort2
Ein Webbrowser ist nicht die beste Methode, um zu überprüfen, ob Ihre hosts
Syntax korrekt ist. Versuchen Sie,
ping www.google.com
und überprüfen Sie, ob ein Ping erfolgt 127.0.0.1
.
hosts
Der Grund, warum Chrome Ihre Datei scheinbar ignoriert, ist das Caching:
Wenn Chrome die IP-Adresse bereits vor kurzem abgefragt hat (die Definition von vor kurzem hängt höchstwahrscheinlich von derLebenszeit (TTL)vom DNS-Server zurückgegeben), wird die hosts
Datei umgangen, da sie bereitsweißdie richtige IP. Dies geschieht, um das Surfen im Internet zu beschleunigen.
Damit Chrome den neuen Eintrag berücksichtigt, gehen Sie wie folgt vor:
Bearbeiten
/etc/hosts
, wie @Renan es beschrieben hat.Gehe zu
chrome://chrome/settings/clearBrowserData
.Wählen
since the beginning of time
.Aktivieren Sie
Empty the cache
, aber deaktivieren Sie alle anderen Optionen.Klicken Sie
Clear browsing data
und warten Sie, bis der Vorgang abgeschlossen ist.Starten Sie Chrome neu.
Chrome sollte Ihre hosts
Datei jetzt respektieren.
Antwort3
Meine Antwort ist eine Kombination der oben genannten Punkte, da ich mich über Fortinet SSL VPN für Ubuntu 16.04 mit meinem Büro verbinde.
Als Erstes musste ich meine Terminalkonsole aufrufen und den folgenden Befehl ausführen:
sudo nano /etc/resolvconf/resolv.conf.d/base
Ich habe das folgende Beispiel hinzugefügt:
searchdomain domain.local
nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx
Anschließend habe ich die Datei durch Drücken von gespeichert CTRL-O
und Nano durch Drücken von geschlossen CTRL-X
.
Ich habe dann Folgendes gemacht und es hat perfekt funktioniert:
Damit Chrome den neuen Eintrag berücksichtigt, gehen Sie wie folgt vor:
Bearbeiten /etc/hosts
, wie @Renan es beschrieben hat.
- Gehe zu
chrome://chrome/settings/clearBrowserData
. - Wählen Sie seit Anbeginn der Zeit.
- Aktivieren Sie „Cache leeren“, aber deaktivieren Sie alle anderen Optionen.
- Klicken Sie auf „Browserdaten löschen“ und warten Sie, bis der Vorgang abgeschlossen ist.
- Starten Sie Chrome neu.
Chrome sollte Ihre Hosts-Datei jetzt respektieren.