服务公告
域名解析生效了网站还打不开:本地缓存与 hosts
发布时间:2026-10-15 15:39
## 症状现象 域名解析已经配置,解析查询工具显示记录已生效,但你或部分用户打开网站还是老样子:打到旧服务器、报错或干脆打不开。这类"半生效"状态几乎都与缓存有关:DNS 的查询结果在每一层都有留存,解析记录改了,缓存里的旧答案还没过期,用户继续被旧记录带偏。排查的思路是沿着"用户实际用哪份答案"往下核对。各地用户看到的答案本就不保证同步:递归服务器各自按 TTL 缓存,生效是一个过程,不是一个时刻。 ## 定位:先确认真实解析 在你这边查实际生效的记录: ```bash nslookup 域名 nslookup 域名 8.8.8.8 ``` 第二条指定公共递归服务器,绕开本地缓存。两者返回不同,说明本地链路还在用旧答案;两者都已是新 IP 而浏览器仍旧,问题在浏览器与操作系统缓存,或浏览器缓存了重定向。再让异常用户做同样测试,能判断问题范围是你一个人、一个网络还是普遍现象。 ## 处理:刷新各级缓存 按层清理:Windows 用 ipconfig /flushdns;macOS 用 dscacheutil 与 mDNSResponder 的组合命令;Linux 看 systemd-resolved 还是 nscd,各有刷新命令;浏览器直接清缓存或无痕窗口验证。站点迁到顺云云服务器后,hosts 法可以逐台办公电脑验证新环境,不影响其他用户的访问。开发调试场景还有一招:把本机 hosts 文件里临时写上域名与新 IP 的映射,直接指定答案,绕开所有 DNS 环节,验证新服务器本身是否正常。hosts 改完立即生效,调试结束记得删掉,留在那里下次又会误导自己。 ## CDN 与其他变量 套了 CDN 的域名,解析生效后看到的本就是 CDN 节点 IP,"打不开"可能是回源环节的问题而非解析:检查 CDN 配置的源站地址是否更新到新服务器。另一类常见变量:服务器侧的虚拟主机按域名分流,解析切过去后新机上的 server_name 没配这个域名,落到默认站点表现成打不开。排查时让用户提供所在网络与截图,比抽象描述有效得多。切换解析前把 TTL 调小、切换后旧机保留运行几天,这两条纪律能消掉大半"半生效"的混乱。切换文档里写明预期生效窗口,客服口径与排查动作都提前备好。下一篇: 数据导出指引发布