为什么有些网页打不开?
如果你想知道为什么网页不能打开,我们需要从如何打开网页的原则开始,我相信这将更有助于你理解。考虑到有些内容需要一定的专业性,我会省略一些细节。
打开网页的过程
我们假设网页打开的过程是我想去成龙家拿快递(龙叔好无辜)。但是我觉得这样更容易理解。
- DNS解析
在这里,我们不用担心DNS是什么。以我们上面假设的例子为例。如果我想快递,我必须首先知道龙叔叔的家在哪里。DNS分析是为了帮助我找到龙哥家的地址。
浏览器和服务端建连
OK,我们已经知道龙叔叔的地址了,但我们不能匆忙跑过去。龙叔叔的家必须有非常严格的保护措施,过去可能会被保安抓住。不,不,我们最好先迎接龙叔叔的家,告诉他我要去他家接快递。问候确认的过程是浏览器和服务器之间的连接(TCP握手)。
数据传输
嗯,现在我们知道龙叔叔的地址,打招呼,然后我们就可以开始了。如果你想得到快递,我的路线是这样的“家”->龙叔家->拿到快递->回家”。我走这条路线的过程叫数据传输。
网页渲染
现在我已经成功地从龙叔叔家里得到了快递(快乐!)。现在是时候打开盒子了。毕竟,我只有在打开盒子后才能看到它的真实面目。我打开盒子的过程是网页渲染(从服务端获取的文档需要通过浏览器渲染才能成为您在网页上看到的内容,具体的渲染细节不会说)。
总结
相信看完以上概念,你对网页打开的过程有了大致的了解。那我们回到问题本身。为什么有些网页打不开?
从以上几个阶段分别对可能影响网页无法打开的点进行分析总结:
DNS分析阶段
- DNS服务器故障导致DNS分析失败:找不到龙叔家怎么拿快递?
- 本地host冲突:DNS服务器应该告诉我龙叔住在香港,家人说龙叔住在北京。关键是我更相信我的家人,这并不酷。
- DNS劫持:例如,一些不知名的wifi或无良运营商会劫持你想访问的网页到其他地方,或者让你无法打开它。
建连阶段
- 您访问的网页服务器故障(停机/超时)...):想跟龙叔家打个招呼,电话打不通,什么方式都联系不上,龙叔家失去了联系,这可以怎么做呢?
- 本地网络故障:我失去了联系,很酷。
- The Great Wall:一般来说,你知道外国不能访问的原因。
- chromeee等一些高级浏览器的安全限制、Firefox会拦截一些钓鱼网站,SO!
数据传输阶段
- 网络传输缓慢(本地上行带宽/服务端下行带宽):本来约好2号去龙叔家取快递,结果路上堵车,3号才到龙叔家。全家人都出去旅游了。也有可能快递太重,路上走得太慢。
- 您访问的网页服务器故障(停机/超时)...):龙叔家进不了门,没人鸟我。我拿不到快递。...卒。
网页渲染
- 网页太大,依赖资源太多:快递太大,拆快递太慢,直接扔掉烦恼。(浏览器内存溢出,凉爽)
以上就是我个人的一些理解,希望对你有所帮助!谢谢你!
0