浏览不同协议的网站,它的过程也是不一样的!
第一种:当我们浏览关于HTTP协议的网站时,过程是这样的~
1 第一步是创建连接:首先,HTTP协议的传输层基于TCP协议的,用户向浏览器发送一个HTTP请求,浏览器向服务器发送请求连接,这时处于等待连接的服务器,接受连接,接下来就是服务器和客户端的信息交互阶段。
2 第二步是信息交互:首先,浏览器将请求包装成HTTP格式的数据包,发送至服务器,服务器接收到这个数据包,之后进行层层拆包解析的过程,得到首部和数据部分;其次,根据请求进行相应的执行,再生成HTTP格式的响应数据包,发送至客户端,浏览器进行数据包的解析,将内容通过浏览器反馈给用户。
第二种:当我们浏览关于HTTPS协议的网站时~
HTTPS较HTTP协议,增加了一层SSL(Secure Socket Layer),即增加了安全性,它基于“非对称加密算法”对传输过程中可能出现的信息泄露等不安全问题提供了解决办法。
1 第一步:用户通过浏览器向服务器发送一个HTTPS请求,服务器会根据该请求数据包中的信息进行校验、确认加密等操作。
2 第二步:在第一步完成的基础上,服务器会向客户端发送一个"数字证书",在该证书里不仅包含了一些认证信息、有效期等信息,还包含了一把”公钥“(非对称加密算法中一对公私密钥其中一把公钥)
3 第三步:浏览器收到数字证书并得到该公钥,浏览器生成一个“随机秘钥”,通过得到的公钥对该“随机秘钥”进行加密,发送至服务器。
4 第四步:服务器收到浏览器发送过来的密文,通过自己持有的私钥对该密文进行解密,得到“随机秘钥”,基于“随机秘钥”加密网页内容,发送至浏览器,浏览器通过自己持有的“随机秘钥”进行解密,最后通过浏览器将内容呈现给用户。
这就是用户浏览一个网站的整个过程了!