从输入网址到页面呈现的过程

WEB应用的本质

1、用户请求远程资源

2、浏览器查找远程资源,打包用户请求并发送

3、服务器根据请求,通过逻辑计算,回复结果给浏览器

4、浏览器解析结果,呈现给用户

过程:

1、根据URL查找服务器地址:逐级查找(浏览器缓存》系统缓存》路由器缓存》ISP DNS缓存》根服务器)

2、建立TCP/IP连接(三次握手),打包并发送请求

3、服务器收到请求,交给相关进程处理

4、服务器处理请求并响应,发送结果给浏览器(状态码:304,本地有缓存的资源请求服务器时,服务器判断若没有修改,返回状态码,不再发送数据)

5、浏览器接收结果并解析(先渲染树,然后DOM树(边下载边渲染))

6、处理页面嵌入资源和异步请求

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏散尽浮华

python案例-用户登录

要求: •输入用户名密码 •认证成功后显示欢迎信息 •输错三次后锁定 1 #!/usr/bin/env python 2 # -*- coding:utf-...

33970
来自专栏云计算教程系列

如何在Ubuntu上安装ionCube

ionCube是一个PHP模块扩展,可加载加密的PHP文件并加速网页。ionCube Encoder可以把PHP源代码转换成ByteCode。进行加密授权处理后...

16400
来自专栏Python

linux每日命令(5):mkdir命令

linux mkdir 命令用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。

13620
来自专栏linux系统运维

磁盘格式化,磁盘挂载以及手动增加swap

24850
来自专栏醉码

cetnos 7.4 kafa本地环境搭建

37760
来自专栏小二的折腾日记

服务器-Nginx模块化结构

习惯上将Nginx分为:核心模块、标准模块、可选HTTP模块、邮件服务模块和第三方模块五大类。

8620
来自专栏linux系统运维

rsync通过服务同步,linux系统日志,screen工具

21840
来自专栏程序猿

Windows环境Java开发环境搭建

本文讲解在Windows操作系统下如何搭建Java环境变量。 一、首先下载JDK安装包。 二、安装。 三、配置Java环境变量。 四、运行CMD测试是否安装成功...

39750
来自专栏Java技术栈

jstack命令:教你如何排查多线程问题

这是之前的一个死锁案例: 一个多线程死锁案例,如何避免及解决死锁问题? 如程序中发生这样的死锁问题该如何排查呢?我们可以使用java自带的jstack命令进行...

54060
来自专栏决胜机器学习

PHP网络技术(六)——session及与cookie的比较

PHP网络技术(六) ——session及与cookie的比较 (原创内容,转载请注明来源,谢谢) 一、概念 session是持续的、双向性的...

39970

扫码关注云+社区

领取腾讯云代金券