我在 Linux 中编辑了 hosts 文件
etc/hosts
我在末尾放了两个条目
127.0.1.1 brij-Latitude
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.217.174.228 adaway.org
172.217.174.228 app.adaway.org
但每当我尝试访问 adaway.org 时,它都会给我一个 404 页面,而不是将我推送到 172.217.174.228 (google.com)。
难道我做错了什么?
答案1
您的修改做过推送到 172.217.174.228,你收到的 404 错误页面来自 Google。有一条消息:
该服务器上未找到所请求的 URL /。
在我的 Firefox 中它看起来是这样的:
服务器检查您使用的 URL,试图决定应该服务哪个网站。一个 IP 地址可以包含多个网站URL 会告诉服务器您想要哪一个。
在这种情况下,服务器无法识别adaway.org
任何可以向您显示的网站,因此出现错误。
此外,服务器无法使用 的证书进行身份验证adaway.org
。它不是正版的adaway.org
,它没有他们的证书。我的 Firefox 会告诉我,Connection is not secure
但仍让我查看服务器返回的内容。其他浏览器(使用其他设置)可能会拒绝与欺诈服务器通信。我的 Vivaldi 设置为更加谨慎;这是我在 Vivaldi 中得到的结果:
此服务器无法证明其身份
adaway.org
;其安全证书来自www.google.com
。这可能是由于配置错误或攻击者拦截您的连接所致。
如您所见,仅重定向到另一个 IP 地址是不够的。您需要让浏览器使用服务器识别为自己的 URL(理想情况下:识别并可以验证),或者至少动态转换通信,以便服务器看到的 URL 与您的浏览器请求的 URL 不同。您不能仅通过修改文件来做到这一点hosts
。