赞
踩
若在电脑上访问某个网站比如CSDN主页(CSDN - 专业开发者社区)、GitHub主页(GitHub: Let’s build from here · GitHub),通过WIFI或者网线访问很慢,甚至网页打不开,但通过流量访问却很快。访问其他网站比如百度、淘宝等,通过WiFi或者网线访问都很快、很正常。
这种情况很有可能是在访问CSDN主页时,需要向某些服务器请求某些资源时,但这些服务器的主机返回的很慢、甚至服务器的主机访问不了,导致资源请求很慢或者甚至请求无响应,导致主页加载很慢,进而给我们感觉页面访问得很慢。
解决方案如下:用电脑浏览器访问那个网站,按F12访问开发者工具,查看哪些资源请求超时,根据请求超时的资源查看资源的服务器域名,通过站长工具(ping.chinaz.com,该工具可以多个地点Ping服务器以检测服务器响应速度),查看该域名对应的哪个主机IP响应得最快,将这个IP手动添加到电脑的hosts文件中,直接通过本地hosts指定服务器IP地址,不再使用DNS查询,最后更新DNS缓存。
今天发现在电脑是访问CSDN巨慢,访问其他网站(百度、淘宝等)却很正常很快。
电脑是通过WIFI或网线联网,WIFI和网线都源于一个路由器。
手机连接WIFI访问CSDN也很慢,但手机用流量访问却很正常很快。
按F12访问开发者工具,查看哪些资源请求超时,如下图所示,发现有这这么多资源请求超时。
通过这些超时的资源查看是哪个服务器域名请求超时,如下图。发现一个请求超时的js文件的服务器域名为csdnimg.cn。
在cmd里尝试ping csdnimg.cn。发现请求超时,如下图。
通过站长工具(ping.chinaz.com,该工具可以多个地点Ping服务器以检测服务器响应速度),查看csdnimg.cn域名对应的哪个主机IP响应得最快,如下图。显示安徽合肥电信节点最快。
在这个页面下方,查询安徽合肥电信节点的服务器IP地址,如下图,为223.247.108.54。
在cmd或Windows PowerShell里面试试ping 223.247.108.54,发现可以使用,平均20ms没问题。
故在本机hosts文件尾部添加一句223.247.108.54 csdnimg.cn。hosts文件在路径C:\Windows\System32\drivers\etc里面,用记事本打开即可添加。如下图,#后为注释,不用理会。
通过在hosts文件中指定域名csdnimg.cn的服务器IP地址为223.247.108.54,不再通过DNS查询。
这里为什么通过DNS查询csdnimg.cn的服务器IP地址有问题,访问这么慢甚至访问不了,这个暂时不清楚。
首先我的DNS服务器已经手动设置为8.8.8.8和8.8.4.4了,已经够稳定了。
但这个CSDN访问慢甚至访问不了的现象应该是一片区域里面的现象,因为我的实验室、宿舍、舍友的实验室网络(这三个网络测试点的地理位置相隔很远)都存在这个现象,可能是这片区域的某台DNS缓存了一个响应速度很慢的csdnimg.cn服务器IP地址,导致我们通过DNS获得的csdnimg.cn服务器IP地址都是这么一个访问速度慢的IP。以至于CSDN主页的一些资源请求超时,导致主页加载很慢甚至加载不出来。
按上面步骤,在开发者工具中发现请求超时的文件域名,除了csdnimg.cn还有g.csdnimg.cn、img-blog.csdnimg.cn、img-home.csdnimg.cn。同理,通过站长工具分别选一个速度最快的服务器IP地址,将他们追加到hosts文件里,如下图所示。
保存hosts文件后,在cmd或Windows PowerShell里运行ipconfig /flushdns,更新DNS缓存。如下图所示。
重新访问CSDN主页(www.csdn.net),就打开的很快了,没有资源请求超时了。
这个方法可以应用到同类的现象中,某个网站, 比如CSDN主页(CSDN - 专业开发者社区)、GitHub主页(GitHub: Let’s build from here · GitHub),在某种途径(比如WIFI或网线)突然访问很慢,但通过其他途径(比如流量)却访问正常;其他网站各个途径也访问正常,有可能就是DNS返回的某些主机IP响应速度太慢了。若更换DNS服务器地址(推荐更换为8.8.8.8、8.8.4.4或其他大型公共DNS)后仍解决不了,可以尝试在hosts中指定这些域名的服务器IP地址。
觉得讲得好的话,麻烦点一下赞呀,你的点赞是我更新的动力!❤
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。