DNS 解析正常但网站打不开:按这 6 步定位
域名能解析到 IP,不代表网站一定能打开。网站打不开通常是端口没通、服务没起、证书/站点配置错误或被拦截。 按下面顺序检查,能最快定位问题点。
第 1 步:确认解析到的是“当前公网 IP”
本地执行(Windows/macOS/Linux 都可):
- 解析结果 IP 必须与控制台显示的公网 IP 一致。
- 如刚改解析,可能存在缓存未刷新,建议等待并用不同网络再查一次。
第 2 步:确认 80/443 端口是否通
在本地执行(任选其一):
Test-NetConnection 你的域名 -Port 443
curl -I https://你的域名
- 端口不通/超时:优先检查安全组、系统防火墙、上游拦截。
- 端口通但返回 502/503:多为后端服务未启动或网关转发配置问题。
- 返回 404:服务正常但站点/路径配置不对(虚拟主机、根目录)。
第 3 步:检查安全组/系统防火墙是否放行 80/443
- 安全组:确认入方向已放行 80/tcp 与 443/tcp。
- 系统防火墙:确认未拦截 80/443(firewalld/ufw/iptables)。
- 如你只放行了 443,访问 http 会打不开或自动跳转失败。
第 4 步:确认 Web 服务是否在监听
Linux 执行:
systemctl status nginx
systemctl status httpd
- 80/443 没监听:服务没启动或配置错误导致启动失败。
- 监听存在但仍打不开:继续看站点配置与日志(下一步)。
第 5 步:看错误码,直接对症处理
- 后端应用没启动(PHP-FPM/Java/Node 等)。
- 反向代理 upstream 配错或端口不对。
- 站点根目录/伪静态配置不对。
- 访问了不存在的路径或站点没正确绑定域名。
- 证书过期、证书链不完整、域名不匹配。
- 只配置了 443,但强制跳转规则写错导致循环跳转。
- 本地网络/安全软件拦截,换网络或热点对比。
- 若仅某地区/某运营商异常,请提供 tracert 结果。
第 6 步:提取最关键的 2 份日志(提交工单用)
常见日志路径(以实际为准):
Apache:httpd/error_log 或 /var/log/apache2/error.log
只需要截取出问题时间点附近的错误日志片段即可。
工单提交模板(复制填写)
公网IP:
域名:
解析结果:nslookup 结果(附)
访问异常:打不开 / 超时 / 报错码(例如 502/503/404/证书错误)(附截图)
测试时间:xxxx-xx-xx xx:xx
端口测试:80/443 是否通(Test-NetConnection 或 curl -I 结果附)
安全组/防火墙:已放行 80/443(是/否)
Web 服务状态:nginx/httpd 状态(截图或文本)
错误日志:error.log 关键片段(附)