Hosts 文件修改后不起作用

Hosts 可以将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,它常被用于测试目的。通过覆盖 DNS(域名系统),以便可以将 Web 浏览器重定向到特定的 IP 地址。但有时候修改了 Hosts 文件,在 Windows 系统上会无法正常工作。如果遇到这种情况,您可以尝试本文中介绍的解决方案来解决问题。

为什么 Hosts 文件不起作用?

Hosts 文件的 Windows 计算机上无法运行的原因可能有很多。您可能在 Hosts 文件中使用了错误的格式、或者 Hosts 文件的权限问题。再比如在 Windows 11/10 计算机上配置了代理,它可能会绕过 Hosts 文件。我们在本文下面解释了处理此问题的解决方案。

Hosts 文件作用

在尝试下面提到的解决方案之前,请确保您在 Hosts 文件中使用正确的格式来重定向 Web 浏览器 中的网站。如果您以错误的格式添加了网站,则 Hosts 文件将不起作用。正确的格式如下:

IP地址  www.abcd.com

IP 地址和域名之间有一个空格。如果用空格分隔 IP 地址和域名不起作用,您也可以使用Tab分隔 IP 地址和域名。

此外,相同的 IP 地址不应位于不同的线路上。如果要为同一 IP 地址添加多个条目,可以将所有这些条目添加到同一行中,并用空格分隔它们。

Hosts 不起作用解决办法

如果您使用了正确的格式,但 Hosts 文件仍然无法正常工作,请尝试以下解决方案:

刷新你的DNS缓存

对 Hosts 文件所做的更改应立即生效。但这并没有发生。因此,刷新 DNS 缓存可以解决问题。为此,您必须在提升的命令提示符下执行以下命令。

ipconfig /flushdns

重置NetBios缓存

如果刷新 DNS 缓存不能解决您的问题,重置 NetBios 缓存可能会有所帮助。以管理员身份打开命令提示符,键入以下命令,然后按 Enter。

nbtstat -R

现在,检查问题是否仍然存在。

检查Hosts文件的编码格式

Hosts 文件应具有以下任一编码格式:

  • ANSI
  • UTF-8

在记事本中打开文件,然后转到“文件 > 另存为”。在下拉列表中选择 UTF-8 或 ANSI 编码格式。将其名称写在引号下,如“hosts”,然后单击Save。您将收到一条确认消息以替换现有文件。单击

utf-8 编码格式保存 Hosts

如果这不起作用,请创建一个新的 Hosts 文件。我们在本文后面解释了这种方法。

检查权限问题

该问题可能是由于权限问题而发生的。Hosts 文件应具有 读取读取和执行 权限。要检查这一点,请按照下列步骤操作:

权限设置
  1. 右键单击 Hosts 文件并选择属性
  2. 出现“属性”窗口时,选择“安全”选项卡。
  3. 组或用户名框中选择用户。
  4. 读取读取和执行权限都应该在允许列下有复选标记。如果没有,请通过单击“编辑”按钮允许对 Hosts 文件的这两个权限。

重置主机文件

如果问题仍然存在,请将 Hosts 文件重置为 default。将 Hosts 文件重置为默认值可以解决连接问题。

禁用代理

禁用代理

如果您的计算机上启用了代理,它可能会绕过 Hosts 文件,因为 Hosts 文件无法正常工作。解决方案是禁用 Proxy。打开您的 Windows 11/10 设置并关闭自动代理设置手动代理设置设置。

7]创建一个新的主机文件

创建一个新的 Hosts 文件并用它替换现有的文件。在创建新的 Hosts 文件之前,我们建议您执行以下步骤并查看问题是否已解决。

  1. 转到 Hosts 文件所在的默认位置。
  2. 复制 Hosts 文件并将其粘贴到另一个位置。
  3. 从原始位置删除 Hosts 文件。
  4. 现在,转到复制 Hosts 文件的位置并将其移动到原始位置。

以上步骤解决了部分用户的问题。也许这些步骤也可以解决您的问题。如果这没有帮助,请创建一个新的 Hosts 文件。为此,请执行以下步骤:

  1. 打开 Hosts 文件的默认位置。
  2. 右键单击 Hosts 文件并选择Rename
  3. 将其命名为Hosts.old并按Enter。您应该以管理员身份登录计算机以重命名 Hosts 文件。
  4. 现在,打开记事本
  5. 转到“文件>另存为”。
  6. 文件名字段中,在引号下键入主机。
  7. 确保编码格式设置为 UTF-8 或 ANSI。
  8. 现在,单击保存
  9. 将此 Hosts 文件移动到 C 驱动器上的默认位置(如果您已将其保存在其他位置)。

Chrome 中的刷新套接字池

Chrome 中的连接问题也可以通过刷新套接字池来解决。如果清除 Windows 设备上的 DNS 缓存不能解决问题,您也可以尝试刷新 Chrome 中的套接字池。为此,请打开 Chrome,然后打开一个新标签页。现在,复制以下地址,将其粘贴到 Chrome 的地址栏中,然后按 Enter

chrome://net-internals/#sockets

单击 Flush sockset pools 按钮。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注