为什么编辑 Hosts 文件以重定向到我选择的 IP 时会出现 404 错误

为什么编辑 Hosts 文件以重定向到我选择的 IP 时会出现 404 错误

我在 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 中它看起来是这样的:

Firefox 中的 404 错误页面

服务器检查您使用的 URL,试图决定应该服务哪个网站。一个 IP 地址可以包含多个网站URL 会告诉服务器您想要哪一个。

在这种情况下,服务器无法识别adaway.org任何可以向您显示的网站,因此出现错误。

此外,服务器无法使用 的证书进行身份验证adaway.org。它不是正版的adaway.org,它没有他们的证书。我的 Firefox 会告诉我,Connection is not secure但仍让我查看服务器返回的内容。其他浏览器(使用其他设置)可能会拒绝与欺诈服务器通信。我的 Vivaldi 设置为更加谨慎;这是我在 Vivaldi 中得到的结果:

Vivaldi 的警告

此服务器无法证明其身份adaway.org;其安全证书来自www.google.com。这可能是由于配置错误或攻击者拦截您的连接所致。

如您所见,仅重定向到另一个 IP 地址是不够的。您需要让浏览器使用服务器识别为自己的 URL(理想情况下:识别并可以验证),或者至少动态转换通信,以便服务器看到的 URL 与您的浏览器请求的 URL 不同。您不能仅通过修改文件来做到这一点hosts

相关内容