本文的目的是通过输入url之后发生的事情来做知识的总结和扩展。所以文章可能会很杂。
主要有以下几步:
1、输入地址
2、查找域名的 IP 地址
3、浏览器向 web 服务器发送一个 HTTP 请求
4、服务器的永久重定向响应(可能出现)
5、浏览器跟踪重定向地址(可能出现)
6、服务器处理请求
7、服务器返回一个 HTTP 响应
8、浏览器显示 HTML
9、浏览器发送请求获取嵌入在 HTML 中的资源(如图片、音频、视频、CSS、JS等等)
参考文献:https://segmentfault.com/a/1190000006879700
正文开始:
1、输入地址:
当你在输入网址的时候,浏览器已经在匹配URL地址了,他会从保存的历史记录,书签等位置匹配你输入的字符串可能对应的URL,给出提示,帮助你进行域名的补全
2.查找IP地址:
本地host文件=>本地DNS服务器=>根DNS服务器=>域服务器
1.浏览器查看本地host文件,看是否有与你输入的域名相对应的规则,有则直接返回相应的IP地址,没有则进行下一步
2.浏览器向本地DNS服务器发送请求,本地DNS服务器通常是当地的运营商。本地DNS服务器收到请求之后,会首先查看缓存记录,看是否有对应规则的IP地址,有则返回给浏览器,没有则继续向根DNS服务器发送请求
3.根DNS服务器并不记录域名和IP地址的对应关系,而是把域服务器的地址给到本地DNS服务器,然后本地DNS服务器向域服务器发送请求,域服务器也不会直接返回域名和IP地址的对应关系,而是告诉本地DNS服务器,你的域名解析服务器的地址
4.本地DNS服务器继续向域名服务器发送请求,域名服务器返回一个对应的IP地址。本地DNS在把IP地址返回给浏览器,并且,本地DNS服务器还会把域名与IP地址的对应关系保存在缓存中,以备其他访问者请求DNS解析的时候能快速做出反应
**