HTTP协议完全指南:从请求响应到HTTPS安全机制

文章目录

一、HTTP协议中的基本概念

1.HTTP协议介绍

HTTP协议(超文本传输协议)是互联网上应用最广泛的应用层协议之一,用于在客户端(如浏览器)和服务器之间传输超文本数据(如网页),采用​​请求-响应模型。

(1)协议

协议可以理解为 ​​人与人之间或机器与机器之间为了顺利合作而提前约定的"行动指南"​​。就像玩游戏前要讲好规则一样,没有规则就会乱套。

(2)传输

通过TCP建立连接(默认端口80),传输过程分为四步:

① 建立连接(TCP三次握手) → ② 发送请求 → ③ 返回响应 → ④ 关闭连接

(3)超文本

超文本(Hypertext)是一种​​通过超链接将不同信息节点组织成网状结构的电子文本​​,它打破了传统文本的线性阅读模式,允许用户自由跳转关联内容。

2.统一资源定位符(URL)

URL是资源的唯一标识,格式:协议://主机名:端口/路径?查询参数#片段

示例:http://www.example.com:8080/page?id=1#section

​​协议​​:http 或 https

​​主机名​​:域名或IP地址(如 www.example.com

​​路径​​:资源在服务器的位置(如 /page)

​​查询参数​​:?后键值对(如 ?id=1)

​​片段​​:#后指定资源子部分(如 #section)

二、HTTP协议中的请求和响应

1.HTTP客户端请求消息

复制代码
GET /index.html HTTP/1.1       ← 请求行
Host: www.example.com          ← 请求头部
User-Agent: Mozilla/5.0
Accept: text/html
                                ← 空行
(GET无请求正文)               ← 请求正文

(1)请求行

包含三部分:

​​方法​​(如 GET、POST)

​​URI​​(资源路径,如 /index.html)

​​协议版本​​(如 HTTP/1.1)

(2)请求头部

键值对传递附加信息(如 Host指定域名,User-Agent声明客户端类型)。

(3)空行

分隔头部与正文(CRLF实现)。

(4)请求正文

GET:参数附在URL后(如 /search?q=term)

POST:数据在正文中传输(如表单提交)。

2.HTTP服务端响应消息

复制代码
HTTP/1.1 200 OK                ← 状态行
Content-Type: text/html        ← 响应头部
Content-Length: 1024
                                ← 空行
<html>...</html>               ← 响应正文

(1)状态行

​协议版本​​(如 HTTP/1.1)

​​状态码​​(三位数字,指示结果)

​​状态文本​​(如 OK)

状态码
类别 首位数字 描述
1xx(信息类) 1xx 临时响应,需客户端继续操作或等待后续处理。
2xx(成功类) 2xx 请求已被服务器成功接收并处理。
3xx(重定向类) 3xx 需客户端进一步操作(如跳转新地址)。
4xx(客户端错误类) 4xx 请求因客户端问题(如语法错误)无法处理。
5xx(服务器错误类) 5xx 服务器内部错误导致请求失败。

(2)响应头部字段

描述服务器及资源信息(如 Content-Type声明响应体格式)。

(3)空行

(4)响应正文

返回的资源内容(如HTML、JSON等)。

3.HTTP请求方法理解

(1)请求方法

关键说明

​​幂等性 ​​:多次相同请求结果一致(如GET、PUT),非幂等方法(如POST)可能导致重复操作。

​​安全性​​ :安全方法(如GET)仅读取资源,无副作用;非安全方法(如DELETE)会修改资源状态。

​​版本支持 ​​:

HTTP/1.0:仅支持GET、POST、HEAD。

HTTP/1.1+:支持全部9种方法。
​​实际应用 ​​:

浏览器主要使用GET/POST,其他方法需通过API调用(如Fetch)。

POST与PUT区别:POST创建资源(非幂等),PUT更新资源(幂等)。

(2)HTTP与HTTPS

1)HTTP与HTTPS的区别
2)HTTPS解决的问题

​​1.数据加密​​:

通过对称加密(如AES)传输数据,防止窃听(如WiFi嗅探)。

​​2.身份认证​​:

服务器用CA签发的证书证明身份,避免钓鱼网站。

​​3.完整性校验​​:

使用MAC(消息认证码)检测数据篡改(如中间人攻击)。

​​4.信任链机制​​:

浏览器预置根证书,验证服务器证书合法性。

相关推荐
☞无能盖世♛逞何英雄☜1 小时前
SSRF漏洞
安全·web安全
Adorable老犀牛2 小时前
负载均衡将https请求转发后端http服务报错:The plain HTTP request was sent to HTTPS port
nginx·http·https·负载均衡
fydw_7152 小时前
进阶配置与优化:配置 HTTPS 以确保数据安全传输
网络协议·http·https·flask
芯盾时代10 小时前
AI在网络安全领域的应用现状和实践
人工智能·安全·web安全·网络安全
银空飞羽12 小时前
再学学MCP间接提示词注入
安全·mcp·trae
安全系统学习15 小时前
【网络安全】漏洞分析:阿帕奇漏洞学习
java·网络·安全·web安全·系统安全
Freeking102417 小时前
【计算机网络】HTTPS
网络协议·计算机网络·https
熙客17 小时前
应用层协议:HTTP
网络协议·http
mooyuan天天20 小时前
pikachu靶场通关笔记14 XSS关卡10-XSS之js输出(五种方法渗透)
安全·web安全·xss·pikachu靶场·xss漏洞
conkl1 天前
Kali Linux 安全工具解析
linux·网络·安全·kali