Firefox浏览器在访问URL时无法遵守hosts文件规定。例如;
我的hosts文件中写着127.0.0.1 local.webdev.com
,但在地址栏输入local.webdev.com的URL时,我总是被重定向到互联网上,而不是本地主机。在其他浏览器中访问这个URL则没有问题。
Firefox最近推出了一个名为"DNS over HTTPS"的新功能,您可能已经(不小心)启用了它。开启此选项会直接将您的DNS请求发送到DNS服务器而非默认的操作系统。
前往 设置-> 通用 -> 网络设置 -> 启用DNS over HTTPS 并关闭此选项。
这会确保您的DNS请求发送到您的操作系统,首先读取hosts文件,然后再发送到DNS。
network.dns.disableIPv6
,而我试图访问的主机(我在/etc/hosts
中设置了一个条目)只支持IPv6。/etc/hosts
条目是针对IPv6的,请确保你没有在about:config
中禁用IPv6地址解析!http://
+
thetoppers.htb
→
http://thetoppers.htb
我曾经遇到过同样的问题。
不确定是否完全解决,但在我的情况下,我注意到以下几点:
about:networking#dns
,您可以看到网站在表格的“Family”中是ipv4还是ipv6。
network.trr.exclude-etc-hosts
(在Firefox 83中添加)必须设置为true(默认值),才能使用/etc/hosts
文件。唯一需要注意的是,在更改主机文件后,您必须重新启动或翻转首选项(两次)。 - Nickolay