您好!欢迎访问否玩代码!
My title page contents
广告位

网站提示“连接超时”别慌,5种排查方法直接上手

栏目: 日期: 浏览:93

电脑屏幕之上, 陡然弹出ERR_CONNECTION_TIMED_OUT, 网站没有办法打开, 后台连接不上, 针对站长以及技术运维而言, 这差不多算是最为常遇到的“拦路虎”。先别着急抓狂, 依据下面5个步骤, 一步步去排查, 多数情形下10分钟之内便能够解决。

第一步:先确认问题在谁身上

打开命令行工具(CMD或终端),输入:

ping www.nifan.com

设想一下, 当能够接收到正常返回的数据之时, 那就表明网络路是处于畅通状态的;要是呈现出“请求超时”这种情况, 那就意味着从你所处位置到目标服务器区间出现了断点。

接着再试:

telnet www.nifan.com 80

若是出现提示“无法打开连接”这种情况, 基本上能够确定这是服务器端口或者防火墙方面的问题。

第二步:检查本地网络与DNS

很多时候,问题出在自己电脑上:

于Windows系统之中, 施行一种操作, 即运行ipconfig /flushdns此举以达刷新DNS缓存之目的 , 于Mac系统里, 要进行该操作, 也就是运行sudo killall -HUP mDNSResponder来实现刷新DNS缓存。

更改公共DNS, 把网卡DNS设置成8.8.8.8, 或者设置成114.114.114.114。

检查代理设置:关闭虚拟专用网络或代理软件,看能否正常访问

凭据Google官方文档, 80%以上的ERR_CONNECTION_TIMED_OUT错误跟本地DNS或者代理配置存在关联, 是这样的情况。

第三步:排查服务器端口与防火墙

如果是自己管理的服务器,登录后台检查:

运用netstat -an这个命令, 通过管道符将其输出传递给grep, 利用grep去查找端口号, 以此来查看端口是不是处于LISTEN状态。

进行安全组以及防火墙规则的检查, 查看对于相应端口, 也就是平常常见的80以及443端口, 有没有给予放行。

如欲查看服务器负载, 可使用top或htop命令, 当CPU占用超过90%时, 服务有可能拒绝新连接, 当内存占用超过90%时, 服务很可能拒绝新连接。

第四步:检查CDN与反向代理

如果你使用了CDN服务,可能是节点故障。可以:

直接通过IP访问服务器(绕过CDN)

检查CDN控制台的节点状态报告

清空CDN缓存后重试

依据权威市场研究机构Gartner所给出的报告, 全球大概有15%的网站访问失败的案例, 最终是被追根溯源到CDN边缘节点响应延迟的情况。

第五步:抓包分析

要是上面所提及的那些方法全部都不产生效果, 那就采用Wireshark , 抓取TCP握手包, 或者采用Fiddler, 抓取TCP握手包。

查看是否三次握手未完成

是否有RST重置包频繁出现

分析TTL值判断是不是中间路由丢包

tcpdump -i eth0 host 目标IP and tcp port 80

这个指令可以在Linux服务器上实时监控数据包流向。

路, 从本地到服务器, 以上排查方法将其覆盖。实际操作时, 若你遇到其他报错, 或者需要更完整的代码调试工具包, 可访问:

否玩代码编辑 https://www.fouwan.com