Safari特定网页无法访问大概率是macOS系统DNS缓存中固化了该域名的负向记录(NXDOMAIN),需先用dscacheutil和grep确认存在【NXDOMAIN】或TTL:0条目,再通过临时写入hosts+刷新+清理三步法精准清除单域名缓存。

当你在Safari中访问某些网站时突然提示“无法连接到服务器”或“找不到服务器”,而其他应用(如邮件、App Store)网络正常,说明问题大概率卡在DNS解析缓存上——它不是浏览器自己的缓存,而是macOS系统级的缓存记录,必须用终端命令精准击中核心服务才能清掉。
用终端两行命令彻底刷新系统DNS缓存
这是最直接有效的方法,适用于所有macOS版本(包括Sonoma、Sequoia),它同时清除dscacheutil缓存和重启mDNSResponder服务,覆盖正向/负向/NXDOMAIN等全部异常条目。
1、打开“访达”→“应用程序”→“实用工具”→双击启动“终端”。
2、在终端中依次输入以下两条命令,每输完一行按回车执行:
sudo dscacheutil -flushcache
sudo killall -HUP mDNSResponder
3、输入管理员密码时屏幕不显示字符,属正常现象,请完整输入后直接回车;若第二条命令返回“no matching processes”,说明mDNSResponder未运行,可忽略,第一条已生效。
4、光标回到新行且无红色报错即成功,【无需重启Safari或电脑,立即可测试网页】。
只对某个域名失效?先确认再定向清除
如果仅www.example.com打不开,但百度、GitHub都正常,说明系统缓存里锁死了这个域名的错误响应,全局清缓存反而可能拖慢其他站点——必须先验证、再动手。
方法一:确认负向缓存是否存在
在终端中运行:
sudo dscacheutil -cachedump -entries Host | grep -A5 -B5 "example.com"
若输出中含【NXDOMAIN】或TTL为0,证实该域名被系统拒绝解析。
规划您的迪拜之旅 — 哈利法塔观景、沙漠探险、迪拜购物中心购物、棕榈岛度假村及黄金市场砍价。还提供支持...
方法二:用hosts临时污染+刷新组合精准清除
① 执行 sudo killall -HUP mDNSResponder
② 执行 echo "127.0.0.1 example.com" | sudo tee -a /etc/hosts
③ 执行 sudo dscacheutil -flushcache
④ 执行 sudo sed -i '' '/example\.com/d' /etc/hosts
【第④步必须执行,否则该域名将永久指向本地】这四步缺一不可,顺序不能乱。
换公共DNS绕过旧缓存路径
当终端命令执行后仍无效,可能是当前DNS服务器(如运营商DNS)持续返回错误结果,此时更换DNS能强制系统丢弃旧路径,重建干净解析链路。
1、点击左上角苹果图标→“系统设置”→“网络”。
2、选中正在使用的连接(如Wi-Fi)→点击右侧“详情…”→切换到“DNS”标签页。
3、选中现有DNS地址,点下方“−”删除;再点“+”添加:8.8.8.8 和 1.1.1.1。
4、点击“好”保存,关闭窗口。
这一步操作起来很简单,直接把文件拖进去就行。

















