当 ping 工作时,浏览器似乎忽略了 hosts 文件?

当 ping 工作时,浏览器似乎忽略了 hosts 文件?

我正在尝试让 xyz.com 在我的计算机(OS X El Capitan)上始终映射到 google.com (216.58.219.206)。

对 /etc/hosts 文件进行了以下更改:

216.58.219.206  xyz.com

我清除了浏览器中的缓存,重新启动了 - 毫无作用。浏览器仍然转到原始 xyz.com 页面。Ping 到 xyz.com 确实转到了 google。

我错过了什么?

答案1

您的浏览器正在告诉服务器,它正在尝试访问xyz.com,而不是google.com

HTTP/1.1及更高版本(几乎没有使用 1.0 的版本)要求浏览器向服务器发送一个Host:标头,告知服务器浏览器正在尝试连接哪个主机名,以防服务器上的同一 IP 地址上托管有多个网站。

/etc/hosts甚至 DNSCNAME记录欺骗也无法解决这个问题。

您可以通过使用/etc/hosts映射xyz.com到(您的本地环回 IP 地址)来解决此问题,并运行仅绑定到的127.0.0.1轻量级进程,并发出 HTTP 重定向()将浏览器指向。httpd127.0.0.1:80302 Foundgoogle.com

xyz.com我相信这将允许您在浏览器中键入并自动访问google.com,但我很确定您的地址栏将更改为显示google.com。希望这是可以接受的。

相关内容