hosts文件是Windows系统中一个不起眼但作用很大的本地域名解析文件。当你访问一个网址时,系统会优先查询hosts文件里的映射记录,如果找到了就直接使用对应的IP地址,而不再去请求DNS服务器。合理利用这个特性,可以实现本地网站测试、屏蔽指定网站、加速域名解析等目的。这篇文章将从文件位置讲起,手把手教你完成修改,并集中处理几个最常见的报错场景。

hosts文件在Windows系统中的位置与打开方法
在Windows 10和Windows 11系统中,hosts文件都存放在同一个固定路径下:C:\Windows\System32\drivers\etc。打开资源管理器,把这个路径粘贴到地址栏回车即可进入该目录,你会看到一个没有扩展名的hosts文件。需要注意的是,有些电脑设置了隐藏受保护的系统文件,如果看不到它,需要在文件夹选项中勾选显示隐藏文件。
直接双击hosts文件是无法打开的,因为Windows不知道该用什么程序处理没有扩展名的文件。正确做法是先打开记事本,点击文件菜单中的打开,把文件类型筛选改成所有文件,再定位到上面的路径选中hosts。更推荐的方式是:在开始菜单搜索记事本,右键选择以管理员身份运行,然后再执行上述打开操作。以管理员身份这一步非常关键,否则保存时会提示拒绝访问。
hosts文件的书写格式与配置实例
hosts文件的基本格式很简单,每一行一条记录,前面是IP地址,中间用空格或Tab分隔,后面写域名。以井号开头的行为注释,不会参与解析。文件中已存在的示例行都被注释掉了,你只需要在文件末尾追加自己的记录即可。
# 屏蔽指定网站,指向本地回环地址 127.0.0.1 www.example-ads.com # 本地开发环境测试 192.168.1.100 dev.ipipp.com # 强制某个域名走指定IP 123.125.114.144 www.ipipp.com
书写时有几个细节容易出错:一是IP和域名之间至少要有一个空格,只写一个空格就够,多个也没问题;二是一行只能写一个域名,如果要给多个域名指向同一个IP,可以写在同一行用空格分隔,也可以分成多行;三是域名不要带http://前缀,只写域名本身;四是修改完成后保存时,如果记事本弹出另存为对话框,保存类型必须选所有文件,编码建议选择ANSI或UTF-8,避免文件名被自动加上.txt后缀。
修改hosts后不生效的排查方法
最常见的疑问是改完了却没效果。首先要明白,Windows会缓存DNS解析结果,修改hosts后需要刷新缓存。以管理员身份打开命令提示符,执行ipconfig /flushdns命令清空DNS解析程序缓存,然后重新打开浏览器测试。有些浏览器自身也有DNS缓存,比如Chrome可以在地址栏输入chrome://net-internals/#dns手动清除。
如果刷新缓存后仍不生效,按下面几个方向逐一检查:
- 权限问题:确认hosts文件的属性中没有勾选只读。右键hosts文件,选择属性,取消只读勾选。
- 保存位置错误:如果保存成了桌面上的副本,系统读取的仍然是原路径C:\Windows\System32\drivers\etc下的文件。
- 代理软件干扰:开启了代理或VPN后,域名解析可能不走本地hosts,需要暂时关闭代理再验证。
- 格式错误:检查是否有中文全角空格、多余的横线,或域名写错。可以用命令
ping 域名验证解析结果是否是你填写的IP。 - 杀毒软件拦截:部分安全软件会把hosts修改视为劫持行为并自动还原文件,需要在安全软件中将hosts加入信任或放行名单。
保存时提示拒绝访问的解决办法
没有管理员权限时修改hosts,保存会弹出另存为窗口,或者直接提示拒绝访问。除了前面提到的用管理员身份运行记事本外,还可以通过修改文件权限解决。右键hosts文件选择属性,切换到安全选项卡,点击编辑,选中当前登录的用户,勾选写入权限后确定。如果安全选项卡呈灰色不可用,需要先在高级设置中取得文件所有权。
另一种做法是借助命令行追加内容。以管理员身份运行cmd,使用如下命令直接向文件末尾写入一行记录:
echo 127.0.0.1 www.test.com >> C:\Windows\System32\drivers\etc\hosts
这种方式省去了打开编辑器的步骤,适合批量脚本场景。但要注意>>是追加写入,如果用单个>会覆盖整个文件内容,造成原有记录全部丢失。
hosts配置的典型应用场景与注意事项
在实际工作中hosts主要用在三个场景。第一是本地开发调试,比如网站还没上线,通过把域名指向开发服务器的IP,可以在真实域名下预览效果;第二是屏蔽广告,把广告域名指向127.0.0.1,请求会直接落空,从而减少页面上的广告加载;第三是绕过DNS污染,在DNS解析异常时手动指定可信的IP地址保证访问正常。
使用hosts也要留意几点。域名解析优先级上hosts高于DNS服务器,一旦某条记录写错,对应网站就访问不了,排查问题时记得先看hosts。企业环境中,组策略或安全软件可能锁定hosts文件禁止修改,这是管理员为了防止恶意劫持采取的措施,个人电脑一般不会遇到。最后建议修改前先备份原文件,把hosts复制一份改名保存,出问题时可以直接还原,省去逐条排查的麻烦。
hosts文件配置Windows hosts修改hosts文件位置修改时间:2026-09-14 02:38:37