虚拟主机网站DNS_PROBE_FINISHED_NXDOMAIN_连接超时与拒绝连接解决
很多站长遇到网站DNS_PROBE_FINISHED_NXDOMAIN 直接重启服务器,结果没解决还丢数据。正确做法是先收集信息:错误提示是什么(连接超时、拒绝连接、DNS错误、502、504)、什么时候开始的、最近改了什么配置、是所有页面还是部分页面。信息越全定位越快。
应用层排查:curl -I http://域名看状态码(200正常,301跳转,403禁止,404不存在,500程序错误,502网关错误,504超时);看 Web 错误日志(nginx: /var/log/nginx/error.log,apache: /var/log/httpd/error_log);看 PHP 错误日志;数据库是否能连接(mysql -u用户 -p -e "show databases")。
参考(Windows hosts与DNS刷新): ``` # 查看hosts文件 # Windows: C:WindowsSystem32driversetchosts # Linux/Mac: /etc/hosts
# 刷新DNS缓存 # Windows ipconfig /flushdns # Linux (systemd-resolved) sudo systemd-resolve --flush-caches # Mac sudo dscacheutil -flushcache sudo killall -HUP mDNSResponder
# 测试端口连通性 telnet 域名 80 telnet 域名 443 # 或PowerShell Test-NetConnection 域名 -Port 80 ```
数据库连接失败是网站打不开的常见原因。域名过期提前 15 天续费,过期后解析会停止;安全组未放行 80/443 是云服务器最常见的坑,控制台安全组添加入站规则;Web服务未启动用 systemctl start nginx,设为开机自启 systemctl enable nginx;SSL证书过期浏览器报不安全,续签后重载配置。
数据库连接失败导致的打不开:PHP 页面报数据库连接错误,检查数据库服务是否启动、连接地址端口是否正确、用户名密码是否正确、数据库是否存在、权限是否够。MySQL 用 mysql -u用户 -p 测试连接,看报错信息(Access denied 是密码错,Can't connect 是服务没启动或端口不对)。

更新时间:2026-08-27 11:50:27