最稳妥的恢复方法是手动用记事本新建默认文件并覆盖原文件,操作前需备份旧文件;默认路径为C:\Windows\System32\drivers\etc,文件名为hosts(无扩展名);内容须包含标准注释及“127.0.0.1 localhost”等核心行。

当你发现访问某些网站被跳转、开发环境 localhost 失效、或公司内网地址突然无法解析时,大概率是 hosts 文件被恶意软件、广告屏蔽工具或误操作改写了。它不像普通文档,改错一行就可能让整个本地网络解析失效,必须立刻恢复为系统原始状态。
用管理员记事本直接覆盖默认内容
这是最可控、最透明的方式,适合你清楚自己改过什么,也愿意手动确认每行内容是否干净。
按下 Win + R,输入 %windir%\System32\drivers\etc 回车,打开该文件夹。
找到 hosts 文件,右键 → “属性” → 取消勾选“只读”,点击“应用”。【若此处提示权限不足,请先跳到下一节处理权限】
右键 hosts 文件 → “以管理员身份运行”记事本(不是普通双击打开)。
全选 → 删除所有内容 → 粘贴以下标准默认文本:
# Copyright (c) 1993-2009 Microsoft Corp.
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host
# localhost name resolution is handled within DNS itself.
127.0.0.1 localhost
::1 localhost
点击“文件”→“另存为”,在“文件名”框中输入 hosts(不加引号、不加.txt),“保存类型”选“所有文件 (*.*)”,编码选 UTF-8,覆盖保存。
从系统 WinSxS 备份自动还原
Windows 自带的组件存储里藏了原始 hosts 的副本,这个方法不依赖人工粘贴,避免手误漏行或编码错误,适合追求零干预的用户。
第一步:按 Win + S,搜“终端”,右键选择“以管理员身份运行”。
第二步:复制粘贴这行命令,回车执行:for /f %P in ('dir %windir%\WinSxS\hosts /b /s') do copy /y %P %windir%\System32\drivers\etc\hosts
第三步:命令执行完没有报错,就说明已成功覆盖。如果提示“找不到文件”,说明当前系统未保留该备份,需换其他方法。
第四步:为验证是否生效,打开命令提示符(无需管理员),输入 ping localhost —— 若返回 127.0.0.1 且无超时,说明映射已恢复。
权限异常时强制获取控制权
当你在 etc 文件夹里看不到 hosts,或右键属性里“安全”选项卡显示“你无权查看此对象的权限”,说明系统已将该文件锁定,必须先夺回所有权才能操作。
进入 C:\Windows\System32\drivers\etc,右键空白处 → “属性” → “安全” → “高级”。
点击“更改”所有人名称,输入你的用户名(如 Administrator 或你的登录名),点“检查名称”确认 → “确定”。
勾选“替换子容器和对象的所有者”,点击“应用” → 等待几秒完成 → 关闭所有窗口。
再回到 etc 文件夹,右键 hosts → “属性” → “安全” → 选中你的用户名 → 勾选“完全控制” → 应用。
现在你就能正常编辑或替换它了。这一步不做,前面所有覆盖操作都会失败并弹出“拒绝访问”。
用系统还原点一键回滚
如果你近期创建过系统还原点,且知道 hosts 被改坏的大致时间,这是最省心的方案——它不只是恢复 hosts,还会把当天所有注册表、驱动、系统设置一并倒退回那个时刻。
方法一:按 Win + R,输入 rstrui 回车 → 选择一个 hosts 出问题前的还原点 → 下一步 → 完成。
方法二:在“设置”→“系统”→“恢复”→“高级启动”→“疑难解答”→“更多恢复选项”→“系统还原”。
还原完成后会重启,无需手动操作其他步骤。注意:此操作不影响个人文档、桌面文件、下载目录里的内容。

















