HTTP 协议基础 | 学习笔记

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 快速学习 HTTP 协议基础,介绍了 HTTP 协议基础系统机制, 以及在实际应用过程中如何使用。

开发者学堂课程【云安全基础课- HTTP 协议基础HTTP 协议基础】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/496/detail/6649


HTTP 协议基础


内容介绍:

一、Web 请求流程概述

 

一、Web 请求流程概述

1. 输入访问 URL http://xxx

首先在浏览器中输入 URL 网址,一个域名的地址,浏览器根据输入的地址来进行 IP 地址的解析。

2. DNS 域名解析

浏览器会在浏览器缓存中进行 DNS 解析;若缓存中无解析,浏览器会在系统层进行解析,进行系统调用,这样浏览器就可以获得记录;若系统中也无记录,就会向路由器发送查询的请求,一般有 DNS 缓存;若路由器也无信息,会继续向 ISP 的 DNS 缓存进行请求查询;若还找不到,会找 DNS 查询服务器向 DNS 的根域进行查询。

在域名解析中系统进行层层缓存是为了加速 DNS 解析的速度。

例:在浏览器中输入 www.123.com.cn

第一种:

直接查询 DNS 查询服务器,若没有缓存,从后往前查从.cn 开始查,到管理根域名的DNS 服务器查询.cn 的 DNS 服务器的根告诉查询服务器;

第二步:查询服务器请求.com.cn 的查询服务器,然后.cn 的返回.com.cn 的 DNS 查询服务器;

第三步:根据.com.cn,查询123.com.cn,在返回

www.123.com.cn的域名。

第二种:

DNS 查询服务器请求管理根的 DNS 服务器把 cn 的域名的服务器返回,由 cn 的服务器进行其他服务器查询,逐级返回,最后返回给 cn 的服务器,由 cn 的服务器将正确的www.123.返回给 DNS 查询服务器,再返回给客户机的浏览器。

3. 建立 TCP 连接

浏览器在查询完 DNS 得到服务器的 IP 地址会与服务器的 Web 建立 TCP 连接

4. 发送 HTTP Resquest 请求(HTTP 请求有:请求报文和响应报文)

把相应的 HTTP 请求发送给 Web 服务器,请求报文按照 HTTP 请求的标准模式进行发送,有请求行请求头部、空格及数据组成。

5. Web 服务器:反向代理

进行永久的重进象,服务器会给浏览器一个301的重进象,将 www 的地址补齐,一般在 HTTP 服务器都会进行301的重进象,为了提高搜索引擎的搜索排名。

6. 应用服务器:处理请求

根据 URL 的地址及服务器的地址进行请求处理,将相应的文件返回。

7. 关闭 TCP 连接:请求响应完成

在建立完连接之后会关闭 TCP 连接,关闭响应,这时 connection 的连接状态是 close 就会被结束。

8. 用户浏览器:渲染响应页面

用户浏览器会根据服务端的返回,将 HTML 进行渲染,将 HTML 转换成肉眼可见的。

实例:B/S 网络框架和请求流程概述:

图片6.png

用户首先访问服务端的系统输入域名,查询 DNS 服务器,浏览器请求 DNS 将域名解析为对应的 IP 地址,IP 地址在互联网找到对用服务器,向服务器发送 get 的请求,服务器返回默认的数字给用户。

服务器后端可能有多台服务器:

分布式缓存系统;文件系统;数据库系统。前端可能还有负载均衡的设备来平均用户请求。

请求数据可能存储在静态文件或者数据库中,这些都需要服务端进行处理,之后把数据返回浏览器,浏览器对数据进行解析判断动态或静态,若数据中还有静态资源,

例如:CSS、JS、图片时,连接会发起 HTTP 请求,可能将静态资源放在 CDN 上。

相关文章
|
4月前
|
缓存 应用服务中间件 网络安全
Nginx中配置HTTP2协议的方法
Nginx中配置HTTP2协议的方法
293 7
|
1月前
|
网络协议 网络安全 数据安全/隐私保护
HTTP 协议浅析
通过对HTTP协议的深入了解,开发者可以更好地设计和优化Web应用,提高数据传输效率和用户体验。
133 21
|
2月前
|
缓存 网络协议 前端开发
Web 性能优化|了解 HTTP 协议后才能理解的预加载
本文旨在探讨和分享多种预加载技术及其在提升网站性能、优化用户体验方面的应用。
Web 性能优化|了解 HTTP 协议后才能理解的预加载
|
2月前
|
XML JSON 前端开发
HTTP协议,Content-Type格式介绍篇
通过理解和正确使用Content-Type头字段,可以确保数据在网络上传输时的正确性和高效性,提升网络应用的可靠性和用户体验
160 28
|
2月前
|
XML JSON 前端开发
HTTP协议,Content-Type格式介绍篇
通过理解和正确使用Content-Type头字段,可以确保数据在网络上传输时的正确性和高效性,提升网络应用的可靠性和用户体验。
306 25
|
2月前
|
XML JSON 前端开发
HTTP协议,Content-Type格式介绍篇
通过理解和正确使用Content-Type头字段,可以确保数据在网络上传输时的正确性和高效性,提升网络应用的可靠性和用户体验。
354 18
|
3月前
|
域名解析 缓存 网络协议
Web基础与HTTP协议
通过掌握这些基础知识和技术,开发者可以更加高效地构建和优化Web应用,提供更好的用户体验和系统性能。
104 15
|
3月前
|
前端开发 网络协议 安全
【网络原理】——HTTP协议、fiddler抓包
HTTP超文本传输,HTML,fiddler抓包,URL,urlencode,HTTP首行方法,GET方法,POST方法
|
4月前
|
Dubbo 安全 应用服务中间件
Apache Dubbo 正式发布 HTTP/3 版本 RPC 协议,弱网效率提升 6 倍
在 Apache Dubbo 3.3.0 版本之后,官方推出了全新升级的 Triple X 协议,全面支持 HTTP/1、HTTP/2 和 HTTP/3 协议。本文将围绕 Triple 协议对 HTTP/3 的支持进行详细阐述,包括其设计目标、实际应用案例、性能测试结果以及源码架构分析等内容。
327 10
|
3月前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
238 3