字节一面:网站显示不出来,怎么排查?

news/2024/5/14 3:31:11/文章来源:https://blog.csdn.net/bjweimengshu/article/details/125195165

大家好,之前有读者在字节一面的时候,被问了这么一个问题:在浏览器输入 URL 并回车后,如果页面迟迟没有出现,怎么去排查问题?

6584898433b4aa1a8fe300848ef835a0.png

我的回答:

最直接的办法就是抓包,排查的思路大概有:

  1. 先确定是服务端的问题,还是客户端的问题。先确认浏览器是否可以访问其他网站,如果不可以,说明客户端网络自身的问题,然后检查客户端网络配置(连接wifi正不正常,有没有插网线);如果可以正常其他网页,说明客户端网络是可以正常上网的。

  2. 如果客户端网络没问题,就抓包确认 DNS 是否解析出了 IP 地址,如果没有解析出来,说明域名写错了,如果解析出了 IP 地址,抓包确认有没有和服务端建立三次握手,如果能成功建立三次握手,并且发出了 HTTP 请求,但是就是没有显示页面,可以查看服务端返回的响应码:

  • 如果是404错误码,检查输入的url是否正确;

  • 如果是500,说明服务器此时有问题;

  • 如果是200,F12看看前端代码有问题导致浏览器没有渲染出页面。

如果客户端网络是正常的,但是访问速度很慢,导致很久才显示出来。这时候要看客户端的网口流量是否太大的了,导致tcp发生丢包之类的问题。

总之就是一层一层有没有插网线,网络配置是否正确、DNS有没有解析出 IP地址、TCP有没有三次握手、HTTP返回的响应码是什么。

实战教学

正好,昨天有位朋友的网站,访问 10 秒都还没显示网页,后面我帮他排查后,定位出了问题,修改问题后,网站访问速度就正常了。

所以,接下来,跟大家说下,我当时的排查思路。

事情的开始

昨天一大早上,朋友(程序员吴师兄)急忙找我,让我帮忙看看他的网站,很多人反馈说他的网站卡的要死,访问 10 秒都还没显示网页,所以很多人点开他的网站就溜了。

55d491c0b7d5c8ed3f8a581898dc5fef.png

而且他说他自己访问很快,我自己也访问了下,确实访问很慢,10多秒都还没显示出网页。

接着,他给我发两个检测网站速度图。

第一张是网站测速结果:

de6fe039cf3dabe0cf377b55c848ee37.png

第二张是 ping 检测结果:

9c65d7506717730948cd0711cde1ad0b.png

第二张是网站访问速度检测结果:

他问我:ping 检测是红的,但国内测速是绿的,这两者有什么关系么?问题原因是 ping 不通导致的吗?

ping 检测走 icmp 协议,网站检测走 http 协议。

我觉得网站访问卡的问题肯定不是因为 ping 不通导致的,因为网站检测是绿的,至少证明了网站的 http 整个网络链路都是没问题的,访问网站不会用到 icmp 协议。

至于 ping 检测为什么是红的,是因为他服务器的防火墙屏蔽了 icmp 协议。

虽然 ping 能帮助我们判断网络延时,但是 ping 不通「不代表」服务器掉线了、网站不能访问了,因为有可能是 icmp 协议被防火墙屏蔽了。

那到底是什么原因导致呢?如何继续排查?

我首先用抓包工具抓了一下访问网站的网络包。

发现能正常进行 TCP 三次握手、TLS 握手、HTTP 数据传输,而且延时也很低。从这又证明,网站的网络是完全没问题的。

接下来,我就用浏览器的 F12 调试工具去排查了。

结果被我发现了好多个访问超时的 CSS 文件,原因就是这个了。这些  CSS 文件 迟迟请求不到,导致网站一直没有显示。

05847f77400d911dafe2046c635a24ac.png

而且,这些 CSS 文件请求地址都是 jsdelivr cdn,这个 jsdelivr cdn 在国内已经用不了

至于吴师兄自己为什么能正常访问,大家都懂f5a76bf7f20d845d51030e96c68b0e4c.png

313167e210e156e5237197474d4215a2.png

我之前自己的网站也是因为 jsdelivr cdn 的问题导致图片全部挂了 ,因为我最开始用的图床就是这个,后面我就自己购买了图床,才把问题解决了。

后面解决的方式也很简单,就是不要用  jsdelivr cdn 来加速静态文件就好了。他把网站的这个插件功能关闭后,就正常了。

好了,整个实战排查过程就这些了,简单总结下有用的知识:

  • ping 不通不代表网站不正常,因为有可能是服务器的防火墙屏蔽了 ICMP 协议;

  • 网站显示不出来,先抓包确认 TCP 握手、TLS 握手、HTTP 请求是否正常;如果都正常,证明网络是没问题的,接着就用浏览器的 F12 调试工具看看,是哪个文件的请求有问题,一般来说 CSS,JS 等文件请求不到的话,就会导致网站显示不出来。

怎么样?体验到计算机网络的美学了吗?8fd31e2b7530805e0064e8765ab8132e.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_744827.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

卧槽,这才是最强Python刷题网站!

大家好,最近经常有粉丝问零基础/基础薄弱,要怎么开始学习python,今天来给大家分享一些python的学习方法,先给大家推荐一个粉丝反馈用起来不错的免费python学习&练习网站https://www.nowcoder.com/link/pc_gzh_pyahzsq_python一…

一夜成名的航班追踪网站,什么来头?

明敏 鱼羊 发自 凹非寺量子位 | 公众号 QbitAI一款本来名不见经传的“小众民航好物”,一夜爆红。其实时追踪航班的功能,昨夜吸引30万人齐齐涌入,直接把这小破网站搞得流量爆炸,一度崩溃。如果你睡得比较早,现在可以再一…

漫画:网站访问缓慢怎么办?

什么是CDN?CDN 全称 Content Delivery Network,翻译过来叫做内容分发网络,核心作用是给互联网内容传输“加速”。什么是全站加速?全站加速,英文Whole Site Acceleration,缩写WSA,融合动态加速与…

自助建站平台实力比拼:凡科、微企点、建站之星、宝华建站、微魔方、上线了...

2019独角兽企业重金招聘Python工程师标准>>> 随着互联网快速发展,网站建设受到越来越多的关注。优秀的企业网站能够为企业形象代言,也可以成为产品或服务宣传的重要窗口、企业收集反馈客户意见的重要渠道、搭建产品信息的数据库等。相较于独立…

大型网站架构演变

前言 一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计…

宝塔面板设置wordpress主题网站伪静态的最简单的方法

WordPress日记 2018-02-27 WP主题开发 4,224 次 最近网站更换了服务器,安装了宝塔面板,安装好以后发现安装管理网站还是非常的直观方便的,但是有一点让我折腾了好久,那就是网站设置伪静态固定连接后,总是出现404错误…

支付宝网站支付即时到帐(一) 参数的文档地址

必备物品:企业支付宝账号 官网 : https://open.alipay.com/platform/home.htm 第一步 创建网站应用 并完善信息 这一步很简单 添加上网站支付的功能 第二步 找到即时到帐的文档 https://docs.open.alipay.com/62/103566 上面有获取pid的方法 https…

SEO关键词排名下降,5个方法帮你恢复排名!

作为一名SEO人员我们每天的工作除了做推广以为,最主要的内容就是监控关键词的排名,很多初入SEO行业的小伙伴特别紧张,如果并不是大面积的关键词排名下降,还请大家放轻松,你可以通过下面5个方法来恢复你的关键词排名&am…

怎样解决Internet Explorer无法访问网站的现象

去掉"自动检测设置"的复选框 1 打开Internet Explorer浏览器,点击右上角齿轮 2 点击Internet选项 3 点击连接 4 点击局域网设置 5 将“自动检测设置”的勾去掉,单击“确定” END 指派IP地址和DNS服务器 1 打开网络和共享中心 2 活动…

一例千万级pv高性能高并发网站架构

一个支撑千万级PV的网站是非常考验一个架构是否成熟、健壮(本文不涉及软件架构的层面,有兴趣也可以讨论)。现抛出一个系统层面的架构,不保证是最优的方案,但也许适合你。理由是再优秀的架构都不具备通用性,需要根据每种应用特点针…

大型网站框架从单台服务器到群集的演变过程

之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的、ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结 果,而没有很详细的讲为什么需要做这 样的演变,再加上近来感觉有不少同学都很难明白为什…

study-19: LAMP企业网站集群架构搭建(自己实战)

一,架构图 二,安装软件 1,WEB-A (192.168.1.241): 1)安装LAMP(MYSQL安装到make && make install即可) 2)安装rpcbind:yum install rp…

WebStack-Laravel 和宝塔导航网站部署

中国所有网站上的人才。。。没有一个教程是完整的。。 效果网站: nav.yzdzy.com www.liuan.wiki 安装宝塔教程 无 命令行工具: 感谢阿里云 升级镜像命令 官方地址 先看下后面要用 https://developer.aliyun.com/composer 我写一份完整的教程 …

html 树形结构_合排名的网站结构是怎样的?

网站结构是网站的骨架,就像人也有骨架一样,及其重要。在搜索引擎打分规则中,网站的得分占比还是非常大的,我们下面会给大家分享下网站结构优化建议。什么是网站结构网站的结构,可以理解为网站的内容分类。通常可以从网…

前嗅ForeSpider教程:网站登录配置

当我们在采集中碰到:所采集的网站数据需要登录,才可以看到所需信息时,则需要在软件中模拟登陆环境,采集数据,此时需要配置登录信息。今天小编就教大家:如何进行网站登录配置,具体步骤如下&#…

已阻止网站自动通话怎么回事_Chrome 86默认阻止网站滥用通知功能

我们在上网的过程中不仅要面临各种广告,还可能遭到各种通知的侵扰。为了改善网络环境,在 Chrome 86 版本中,谷歌将引入一项新功能来阻止网络滥用通知,并传达某些误导性的内容。事实上,这是谷歌第三次针对网页通知进行调…

html 域名随机跳转_已拥有服务器和域名,怎样搭建网站

网站有三个要素:域名、服务器、程序,有了域名、服务器、静态网页接下来我们需要做的就是把这三个要素链接起来。接下来小编就来告诉大家我们怎么样把这三个要素整合成一个可以浏览的动态网站。首先我们需要把域名解析到服务器,我们进入域名服…

html设置文字超过字数_设置网站关键词的方法

设置网站关键词的方法看似很简单,但实际上设置好还是很难的一件事情,就拿我的SEO博客的标题,一个20多字的标题就能覆盖上百个关键词,这种效果和方法你会吗?关键词是SEO的根,是开展一切SEO工作的源头。而网站…

python 网站开发环境_搭建Python+Django开发环境

第一步:安装python。常见的windows系统,直接python网站下载 最新的版本python3.5.python安装好之后,配置好环境变量。使得python和 pip命令能够正常使用。第二步:安装Django用pip命令可以直接安装 django 。 pip install django检…

网站优化之->升级RDS 网站访问速度直接提升10倍

今天给宝塔面板添加了RDS(阿里云家的产品) 访问地址:RDS 产品介绍 首次购买优惠地址:新用户购买优惠地址 土豪可以不用点这个。。。 为啥rds 快 我提交工单咨询了下 原因RDS走的是内网 速度是G级别的 。。然后rds 优化了算法 然后就特别快 之前我的…