1.根据域名到DNS找到IP 2.根据IP建立TCP三次握手连接 3.连接成功发出http请求 4.服务器响应http请求 5.浏览器解析html代码并请求html中的静态资源(js/css) 6.关闭tcp连接(四次挥手) 7.浏览器渲染页面…
简单理解: 当在浏览器地址栏输入一url时,浏览器会做以下几个步骤: 1.将url转化为ip地址,也就是DNS解析,(先找本地host文件中是否有对应的ip地址,如果有就直接用,没有的话,就按域名的二级,一级的顺序进行查找). 2.找到请求的的服务器后,就开始建立tcp连接,此处有三次握手. 3.tcp建立连接后,开始向服务器发送请求,服务器首先响应并返回的是一个html文档. 4.此处就是浏览器解析html文档了, 解析html文档,就是按照html文档标签的顺序,从上往下进行解析,并在这个过…
最近在进行前端面试方面的一些准备,遇到了一个经典前端问题,一个url从输入到页面加载中间到底发生了什么,以前也认真想过这个问题,但是当时回答的都不全面,现在来好好总结一下: 总体来说分为以下六个步骤: 1.DNS解析 2.TCP连接 3.发送HTTP请求 4.服务器处理请求并返回HTTP报文 5.浏览器解析渲染页面 6.连接结束 具体过程: 1.DNS解析 DNS解析的过程就是寻找哪台服务器上有我请求资源的过程,当你在浏览器中输入一个地址时,例如:www.baidu.com,其实并不是百度网站真…
https://cloud.tencent.com/developer/article/1396399 https://www.cnblogs.com/haonanZhang/p/6362233.html https://cloud.tencent.com/developer/article/1343200 https://cloud.tencent.com/developer/article/1166319 从 URL 输入到页面展现到底发生什么?   前言 一.URL 到底是啥 二.域名解析…
解析URL:浏览器首先对拿到的URL进行识别,抽取出域名字段. DNS解析: 查询浏览器缓存(浏览器会缓存之前拿到的DNS 2-30分钟时间),如果没有找到, 检查系统缓存,检查hosts文件,这个文件保存了一些以前访问过的网站的域名和IP的数据.它就像是一个本地的数据库.如果找到就可以直接获取目标主机的IP地址了.没有找到的话,需要 检查路由器缓存,路由器有自己的DNS缓存,可能就包括了这在查询的内容:如果没有,要 查询ISP DNS 缓存:ISP服务商DNS缓存(本地服务器缓存)那里可能有相…
福哥答案2020-07-02: 简单回答: 域名解析. 建立TCP连接. 请求. 处理. 响应. 释放TCP连接. 页面渲染. 中级回答: 域名解析 浏览器DNS缓存. 操作系统DNS缓存. 路由器缓存. ISP 服务商缓存. 根服务器递归查询. 建立TCP连接.三次握手. 请求.请求报文格式: 请求行.请求方式.url.版本,比如 POST index.html / HTTP/1.1. 请求头.键值对,比如Connection: Keep-Alive. 空行. 请求体. 4.1. 键值对,比如…
首先根据DNS获取该url的ip地址,ip地址的获取可能通过本地缓存,路由缓存等得到. 然后在网络层通过路由选择查找一条可达路径,最后利用tcp/ip协议来进行数据的传输. 其中在传输层将信息添加源端口号和目的端口号来进行组装.…
经典问题:在浏览器输入一个url后,会发生什么事情呢? (1)假设是简单的http请求(GET),IPV4,无代理. 浏览器先查看浏览器缓存-系统缓存-路由器缓存,若缓存中有,请略过中间步骤,直接跳到第9步~若没有,则按照下面的步骤进行操作. 浏览器从url中解析出服务器的主机名,并将主机名转换成服务器的IP地址.PS:DNS查找域名的过程 浏览器从url中解析出端口号,默认80 浏览器建立一条与服务器的tcp连接(建立过程:三次握手). PS:一个完整的TCP连接 浏览器通过tcp连接向服务器…
一.输入设备(或粘贴)输入 URL,按下 Enter键 或其他按钮开始请求. 二.浏览器开始解析 URL 关于 URL 到相关知识点:什么是URI,URL以及URN,你真的理解了吗. 1.URL 是否合法 2.URL 中的字符转换 3.HSTS列表 协议升级.相关文章 HSTS详解.在现代浏览器中,这一步有可能导致请求中止. 三.检查本地缓存,根据缓存情况决定下一步的动作 1. 强缓存(Cache-Control 和 Expires)   直接从本地缓存读取资源(若是这步,便没有下面的步骤) 2…
原文:http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/ 作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等. 本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事- 1. 首先嘛,你得在浏览器里输入要网址: 2. 浏览器查找域名的IP地址 导航的第一步是通过访问的域名找出…