如果你上网超过十分钟,你就已经知道,计算机是通过使用独特的数字地址(或互联网协议地址)来找到彼此的。域名系统(DNS)充当着通讯录的角色,计算机会使用它来查找与特定域名相关的IP地址。通常,这一过程能够顺利地进行,但有时你可能需要修改域名解析(hosts)文件。
你为什么要修改hosts文件?
假设你已经注册了一个新域名,但该域名并没有在互联网上传播开来,而你又想要立即让你的新网站运转起来?
或者你正在开发或预备网站上工作,但你想要你的计算机认为它是真实的域名?
此时,位于你的计算机深处的、名为hosts文件的小文本文件就派得上用场了。
Hosts文件是如何工作的?
当你的计算机试图解析主机名时,它实际上会首先检查hosts文件。如果它没有在其中找到它所需要的,那么它就会转向DNS。
因此,如果你想要你的计算机将一个域名与一个特定的IP地址关联起来,现在,你所需要做的就是将合适的条目添加到本地hosts文件中。
因为计算机会在查看DNS之前检查hosts文件,所以你可以对DNS进行有效的覆盖。
Hosts文件是一种简单的文本文件。它的一行看起来是这样的:
1. 123.45.67.89 www.somedomain.com
123.45.67.89是IP地址,是你想要www.somedomain.com指向的地方。
编辑hosts文件的步骤取决于机器的操作系统。
修改Windows hosts文件
若要修改Windows计算机上的hosts文件,请使用Notepad文本编辑器。最近几个版本的Windows都强制要求使用用户访问控制(UAC),因此,为了更改hosts文件,你将需要以管理员的身份运行Notepad。
Windows 10和Windows 8
1. 按下Windows键。
2. 在搜索框中输入Notepad。
3. 右键点击Notepad并选择以管理员身份运行。
4. 在弹出来的对话框中点击是的。
5. 导航到c:\Windows\System32\drivers\etc
6. 打开hosts文件。(确保你有文件类型选择集来显示所有文件,而不只是.txt文件。)
当你打开了文件后,它看起来将是这样的:
7. 在文件中加入新的行。最好转到文件末尾,在现有条目下添加你的新条目。行前面带有#的行是被注释掉了的,没有任何作用。
8. 点击文件 > 保存。
Windows 7和Windows Vista
从本质上来说,步骤是一样的,但若要打开Notepad:
开始 > 所有程序 > 辅助程序
然后按以上步骤继续进行。
Windows NT、Windows 2000和Windows XP
这些Windows版本并没有使用用户访问控制(UAC),因此你可以跳过以管理员身份运行Notepad这一步,正常打开它即可:
开始 > 所有程序 > 辅助程序
编者按:你可以使用开源桌面app HostsFileEditor来管理Windows机器上的hosts文件。
修改Mac上的hosts文件
这些指令适用于Mac OS X 10.6~10.12。使用终端app即可在Mac上编辑hosts文件。
1. 打开应用程序 > 实用程序 > 终端
2. 将以下行输入到终端窗口,打开hosts文件:
1. sudo nano /private/etc/hosts
3. 使用方向键浏览文件,并在现有映射下附加新的映射。
4. 按下Control-X,然后回答是的保存更改。
5. 输入以下终端命令清除DNS缓存:
1. dscacheutil -flushcache
编者按:你也可以使用开源桌面app Gas Mask来管理Mac上的hosts文件。
记住…
请首先备份,因此如果出现任何错误,你都可以恢复。
IP地址和主机名应该至少隔开一个空格,尽管系统允许隔开更多。
#表明的是文件中的一个注释。当你使用完临时映射时,你就可以移除它,或者将这一行注释掉。
你的浏览器会缓存DNS信息,因此好的做法是,在编辑hosts文件之前关闭所有浏览器窗口。然后保存你的编辑并重启浏览器。
记住,当你不再需要它们时,请移除你的更改。