如何在Linux,Windows和macOS上编辑主机文件

hosts文件用于将域名(主机名)映射到IP地址。 它是所有操作系统(包括Linux,Windows和macOS)使用的纯文本文件。

主机文件的优先级高于DNS。 当您输入要访问的网站的域名时,该域名必须转换为其相应的IP地址。 操作系统首先检查其主机文件中是否有相应的域,如果没有该域的条目,它将查询配置的DNS服务器以解析指定的域名。 这仅影响进行更改的计算机,而不影响域在全球范围内的解析方式。

当您想在不更改域DNS设置的情况下测试网站时,使用hosts文件将域映射到IP地址特别有用。 例如,您要将网站迁移到新服务器,并且想要在将域指向新服务器之前验证其是否完全正常。 主机文件还可以用于阻止您计算机上的网站。

在本文中,我们将提供有关如何在Linux,macOS和Windows上修改主机文件的说明。

主机文件格式

主机文件中的条目具有以下格式:

IPAddress DomainName [DomainAliases]

IP地址和域名应至少用一个空格或制表符分隔。 开头的行 # 是评论,将被忽略。

要将条目添加到hosts文件,只需在文本编辑器中打开文件即可。 下面是一个示例主机文件:

# Static table lookup for hostnames.
# See hosts(5) for details.

127.0.1.1 linuxize.desktop linuxize
127.0.0.1 localhost

主机文件的更改将立即生效,除非应用程序缓存了DNS条目。

要撤消更改,只需打开文件并删除添加的行。

在Linux中修改主机文件

在Linux上,文件的完整路径为 /etc/hosts

以下说明适用于所有Linux发行版,包括Ubuntu,CentOS,RHEL,Debian和Linux Mint:

  1. 在终端窗口中,使用您喜欢的文本编辑器打开hosts文件:

    sudo nano /etc/hosts

    出现提示时,输入您的sudo密码。

  2. 向下滚动到文件末尾并添加新条目:

  3. 保存更改。

在Windows中修改主机文件

在Windows上,文件的完整路径为 c:WindowsSystem32Driversetchosts。 以下说明适用于Windows 10和Windows 8。

  1. 按Windows键,然后在搜索字段中键入记事本。

  2. 右键单击记事本图标,然后选择以管理员身份运行。

  3. 在记事本中,单击文件,然后单击打开。 在“文件名”字段中,粘贴 c:WindowsSystem32driversetchosts

  4. 向下滚动到文件末尾并添加新条目:

    Windows主机文件

  5. 通过单击保存更改 File > Save

在macOS中修改主机文件

在macOS上,文件的完整路径为 /etc/hosts。 以下说明适用于所有macOS版本。

  1. 在终端窗口中,使用喜欢的文本编辑器打开hosts文件:

    sudo nano /etc/hosts

    出现提示时,输入您的管理密码。

  2. 向下滚动到文件末尾并添加新条目:

    macOS主机文件

  3. 保存更改并刷新DNS缓存:

    dscacheutil -flushcache

结论#

hosts文件允许您设置给定域名的IP地址。

如有任何疑问,请随时发表评论。

DNS终端

Sidebar