访问一个网站时浏览器与服务器需要完成的任务有哪些?
2020-06-04 16:49
106 查看
主要流程:
1、浏览器向 DNS 服务器请求解析该 URL 中的域名所对应的 IP 地址;
2、解析出 IP 地址后,根据该 IP 地址和默认端口
80,和服务器建立TCP连接;
3、浏览器发出读取文件(URL中域名后面部分对应的文件)的HTTP
请求,该请求消息作为 TCP三次握手的第三个报文的数据发送给服务器;
4、服务器对浏览器请求作出响应,并把对应的 html 文本发送给浏览器
5、释放TCP连接;
6、浏览器加载该 html 文本并显示内容;
详细流程:
1、首先,在浏览器地址栏中输入url。
2、浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有,则跳到第三步操作。
3、在发送http请求前,需要域名解析(DNS解析)(DNS(域名系统,Domain Name System)是互联网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住IP地址。),解析获取相应的IP地址。
4、浏览器向服务器发起tcp连接,与浏览器建立tcp三次握手。(TCP即传输控制协议。TCP连接是互联网连接协议集的一种。)
5、握手成功后,浏览器向服务器发送http请求,请求数据包。
6、服务器处理收到的请求,将数据返回至浏览器。
7、浏览器收到HTTP响应。
8、读取页面内容,浏览器渲染,解析html源码。
9、生成Dom树、解析css样式、js交互。
10、客户端和服务器交互。
11、ajax查询。
相关文章推荐
- 刚接触java,写的一个并发访问网站计时的程序,总是捕捉到服务器返回不正确的状态码
- 快速打造阿里云网站-我们要实现一个类似的平台需要实现哪些系统与功能(三)...
- [j2ee]网站被访问次数的实现(一个ip一天只计算一次,且服务器重启后访问记录仍然存在)
- 通讯:使用浏览器访问一个网站的具体过程是什么样的?
- 浏览器提示"WordPress 需要访问您网页服务器的权限"的解决方法
- 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。
- 用户用浏览器访问一个网站,发生了什么。
- 用户用浏览器访问一个网站的时候背后的过程与步骤是怎样的?
- 做一个网站需要在哪些方面投入
- 对于一个网站,如何禁止直接从浏览器Web browser中访问js文件
- 在设计网站时,网站被访问情况和用户使用情况是网站设计的一个重点。当需要评价网站价值时,网站访问量是一个重要参数。请结合使用Application对象和Session对象来统计当前在线用户数量
- 浏览器访问一个网站所经历的步骤
- 想做一个可以赚钱的网站需要解决哪些问题
- hdu 3433 A Task Process N个人,第i个人完成一个A任务需要时间ai,完成一个B任务需要时间bi, 现在又X个任务A和Y个任务B,求完成所有任务所需要的最短时间。
- 您可能试图从服务器上的安全浏览器访问此网站。请启用脚本然后重新加载此页。
- 同一个浏览器打开多个标签访问同一个网站,只能等待其中一个执行完毕才能执行下一个(php的session锁机制)
- 学院有意找你开发一个“毕业论文选题管理”的软件,在正式承接本项目的开发任务之前,你认为需要做哪些前期准备工作。
- WEB服务器访问SQL Server 2008数据库服务器需要开启哪些端口?
- 浏览器打开一个网站可能经历哪些步骤
- 使用Java在本地创建一个服务器 ,通过浏览器对其进行访问的一个简单测试