• 欢迎访问1024小神,一个只会Python的程序猿不是一个好司机
  • 有什么想对我说的可以在留言板里给我留言哦~
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏1024小神吧

在浏览器中输入网址到看到网页内容经历了哪些过程

优化高效 1024小神 6个月前 (12-26) 220次浏览 2个评论
  • 1.在浏览器地址栏中输入网址
  • 2.浏览器获取这个网址之后,会先去缓存中看看有没有要访问的资源,从浏览器缓存-系统缓存-路由缓存中查看,如果有就不再进行hhtp请求,直接从缓存中加载资源。否则进行步骤3。(缓存就是把之前访问过的web资源,例如css、js、图片等资源保存在本机的内存或磁盘中)
  • 3.浏览器拿到域名自动去向DNS(域名系统)服务器发起请求,查询用户输入的域名对应的ip地址 (域名的设定是为了方便人类记忆,而机器识别的是ip地址)
  • 4.浏览器拿到ip地址后,通过ip地址和端口号和服务器建立tcp连接。(建立tcp连接需要经过三次“握手”,是可靠连接,能确认数据最终是否送达到目标)

    上图就是三次“握手”过程。
    发送端首先发送一个带SYN标志的数据包到服务器。服务器接收到后,回传一个带有SYN/ACK标志的数据包以示传达确认信息。最后发送端在回传一个带ACK标志的数据包代表“握手”结束。
  • 5.三次“握手”建立连接成功之后,浏览器开始向服务器发起http请求,并通过http协议将请求信息包装成请求报文(包含请求行、请求头、空行、请求体),然后通过socket发送到服务器
  • 6.当服务器接收到客户端浏览器发送过来的请求报文时候,按照 HTTP 协议将请求报文解析出来
  • 7.然后服务器拿着请求报文中的请求信息(例如请求路径url),做相应的业务逻辑处理操作
  • 8.当业务逻辑处理操作完成之后,服务器将发送给浏览器的数据按照http协议包装成响应报文(响应行、响应头、空行、响应体)
  • 9.然后服务器将响应报文发送给浏览器
  • 10.浏览器接收到响应报文后,按照HTTP协议将响应报文解析出来
  • 11.浏览器拿到响应报文中响应体的数据开始渲染html、css,执行javaScript
  • 12.如果在解析的过程(从上到下)中,发现有外链的标签(link、css、img)
  • 13.浏览器会自动对该标签指向的 路径地址 发起新的请求,同上。

如有失效,请留言告知丨转载请注明原文链接:在浏览器中输入网址到看到网页内容经历了哪些过程
点赞 (0)

您必须 登录 才能发表评论!

(2)个小伙伴在吐槽
  1. 鑫鑫
    1024!签到时间:2021-04-05 21:59:59,每日打卡,生活更精彩哦~
    2021-04-05 22:00
  2. 木木vip
    好怀恋十几年前做html静态页面的日子啊! 那时候直管页面不管流量!
    2020-12-27 21:42