网络基础入门到深入(3):网络协议-HTTP/S

目录

一、HTTP和HTTPS协议简介

1.HTTP协议

[.HTTP 协议](#.HTTP 协议)

作用:

特点:

2.HTTPS协议

作用:

实现方式:

特点:

二.HTTP的请求与响应结构

1.HTTP请求结构

1.请求行:描述操作和资源

2.请求头:

[3.请求体 :](#3.请求体 :)

2.HTTP响应结构

1.状态行:

2.响应头:

3.响应体:

HTTPS的工作原理(SSL/TLS)

[1. SSL/TLS 的核心功能](#1. SSL/TLS 的核心功能)

[2. HTTPS 的握手过程](#2. HTTPS 的握手过程)

[3. 核心概念](#3. 核心概念)


本篇内容将开始讲解HTTP和HTTPS,这部分内容会涉及HTTP 的请求与响应结构、HTTPS 的安全性原理


一、HTTP和HTTPS协议简介

1.HTTP协议

.HTTP 协议
  • 全称:HyperText Transfer Protocol(超文本传输协议)
作用

在客户端(如浏览器)与服务器之间传输网页数据。

特点
  • 无状态:每次请求独立,服务器不会记住之前的请求。
  • 明文传输:数据不加密,容易被窃听。

2.HTTPS协议

  • 全称:HTTP Secure(安全超文本传输协议)

作用

为 HTTP 添加了加密层,确保通信安全。

实现方式

HTTP + SSL/TLS。

特点

  • 数据加密,保护隐私。
  • 防止中间人攻击和数据篡改。
  • 使用 https:// 前缀,默认端口是 443。

二.HTTP的请求与响应结构

1.HTTP请求结构

客户端向服务器发送请求,包含以下部分:

1.**请求行:**描述操作和资源
  • 方法(如 Get、POST、PUT、DELETE)
  • URL(目标资源路径)
  • 协议版本(如HTTP/1.1)

示例:

bash 复制代码
GET /index.html HTTP/1.1
2.请求头:

包含附加信息(元数据)

  • 示例:

Host: www.example.com

User-Agent: Mozilla/5.0

3.请求体 :

携带数据(仅POST登方法有)

示例:

name=Alice&age=25


2.HTTP响应结构

服务器响应客户端的请求,包含以下部分:

1.状态行:

描述响应状态

  • 协议版本(如HTTP/1.1)
  • 状态码(如200表示成功)
  • 状态描述(如OK)

以下是常见的 HTTP 响应结构中的状态码和状态描述 表格,涵盖了不同的类别及常见状态码的解释:

类别 状态码 状态描述 含义
信息响应 100 Continue 继续,请求的初始部分已经接收,客户端应继续发送剩余部分。
101 Switching Protocols 切换协议,服务器已根据客户端请求切换到另一协议。
102 Processing 处理中,服务器已接收请求但尚未完成。
成功 200 OK 请求成功,服务器返回请求的资源。
201 Created 已创建,请求导致新的资源成功创建。
202 Accepted 已接受,服务器接受了请求但尚未处理完成。
204 No Content 无内容,服务器成功处理了请求,但没有返回任何内容。
重定向 301 Moved Permanently 永久移动,资源已永久转移到新位置,后续应使用新 URL。
302 Found 临时移动,资源暂时被转移到另一个位置。
303 See Other 查看其他位置,客户端应使用 GET 请求访问另一个 URI。
304 Not Modified 未修改,客户端缓存的资源未改变,可以直接使用本地副本。
307 Temporary Redirect 临时重定向,资源被临时移动,且后续仍应使用原 URL。
客户端错误 400 Bad Request 错误请求,客户端请求有语法错误,服务器无法理解。
401 Unauthorized 未授权,客户端未提供认证凭据或凭据无效。
403 Forbidden 禁止访问,服务器理解请求但拒绝执行。
404 Not Found 未找到,服务器无法找到请求的资源。
405 Method Not Allowed 方法不允许,请求中使用的方法被禁止。
408 Request Timeout 请求超时,客户端在规定时间内未完成请求。
429 Too Many Requests 请求过多,客户端发送的请求次数超出限额。
服务器错误 500 Internal Server Error 服务器内部错误,服务器在处理请求时发生错误。
501 Not Implemented 未实现,服务器不支持当前请求的方法。
502 Bad Gateway 错误网关,服务器作为网关时收到无效响应。
503 Service Unavailable 服务不可用,服务器暂时过载或维护。
504 Gateway Timeout 网关超时,服务器作为网关时未及时获得上游服务器响应。

2.响应头:

附加信息

示例:

Content-Type: text/html

Content-Length: 1234

3.响应体:

返回的实际内容


HTTPS的工作原理(SSL/TLS)

1. SSL/TLS 的核心功能
  • 加密:防止通信内容被窃听。
  • 认证:确认服务器身份是否可信。
  • 完整性:确保数据未被篡改。
2. HTTPS 的握手过程

HTTPS 的核心是 TLS 握手。以下是简化的流程:

  1. 客户端发起请求:客户端发送支持的加密算法和协议版本。
  2. 服务器响应:服务器选择加密算法,并发送公钥和数字证书。
  3. 密钥协商:客户端验证服务器证书,并生成对称密钥,通过服务器公钥加密发送给服务器。
  4. 安全通信开始:双方使用对称密钥进行加密通信。
3. 核心概念
  • 对称加密:同一密钥用于加密和解密,速度快。
  • 非对称加密:公钥加密,私钥解密,安全性高。
  • 数字证书:由受信任机构(CA)颁发,用于验证服务器身份。

好了,这就是本篇文章,大概讲解了一下HTTP和HTTPS协议的一些内容,后续将会介绍其他更多的协议内容

相关推荐
真想骂*29 分钟前
克服HTTP无状态难题:专业建议与指导
网络·网络协议·http
小林熬夜学编程29 分钟前
【Linux网络编程】第十九弹---深入探索:五种IO模型与高级IO概念,揭秘非阻塞IO实战
linux·运维·服务器·开发语言·网络·c++
DX_水位流量监测31 分钟前
水库水雨情监测系统:水位、雨量、流量等参数全天候实时监测
大数据·开发语言·前端·网络·人工智能·信息可视化
网安-轩逸2 小时前
[网络安全] DVWA之 Open HTTP Redirect 攻击姿势及解题详析合集
安全·web安全·http
像污秽一样6 小时前
《计算机网络A》单选题-复习题库解析-最终
网络·计算机网络
云计算DevOps-韩老师8 小时前
【网络云SRE运维开发】2024第52周-每日【2024/12/31】小测-计算机网络参考模型和通信协议的理论和实操考题
开发语言·网络·计算机网络·云计算·运维开发
xccoding9 小时前
【项目实战】Apache JMeter HTTP 接口测试
jmeter·http·apache
小白爱电脑9 小时前
光纤收发器技术参数详解
运维·网络·光纤收发
hgdlip11 小时前
ip属地是看运营商吗还是手机
网络·tcp/ip·智能手机