http首部

1. htttp 报文首部

报文结构为:首部 空行(CR+LF)主体

在请求中 http报文首部由请求方法,URI,http版本,首部字段等构成

在响应中:状态码,http版本,首部字段3部分构成

2. http 首部字段

给浏览器和服务器提供报文主体大小,所使用语言,认证信息等

字段结构 为 首部字段名:字段值 例如 content-Type:text/html

3. http/1.1 通用首部字段

请求报文和响应报文都会使用的首部

  • 首部字段cache-control 指令,操作缓存工作机制,可用于请求和响应

cache-control: private ,max-age=0,no-cache,

private : 缓存服务器会对该特定用户提供资源缓存的服务
public:表示其他用户也可以利用缓存
no-cache: 客户端请求使用no-cache表示客户端将不接收缓存响应,缓存服务器必须把请求转发给源服务器;从服务器端响应中包含no-cache表示 缓存服务器将不能对资源进行缓存,,源服务器也不在对缓存服务器请求中提出的资源有效性进行确认 。

no-store: 请求或者响应的任一部分都不缓存在本地存储

max-age: 请求中包含的话表示 缓存资源的缓存时间比指定时间数值更小,则客户端就接收缓存资源,值为0时说明需要将缓存服务器转发给源服务器;响应中包含max-age;时,表示缓存服务器不对该时间内资源的有效性再作确认,值则表示资源保存为缓存的最长时间。

only-if-cached指令 从缓存获取资源

connection : keep-alive close ,在http/1.1版本默认连接时持久连接,之前版本则是非持久连接,所有老版本要用keep-alive值,close 表示断开连接

pargma:no-cache 只用在客户端请求中,表示要求中间服务器不返回缓存的资源。

4. 请求首部字段

从客户端发往服务器端发送请求 报文中所使用的字段

  • Accept :text/html application/xhtml+xml, 通知服务器 自己需要的资源格式(可以是多种格式),以及格式的优先级(q= ,权重,0到1之间,1为最大值和默认值,)
  • Accept-Charset : unicode-1-1; q=0.8 ,通知服务器 希望接收客户端所支持的字符集,以及字符集的优先级,
  • Accept-Encoding: gzip 通知服务器 用户代理所支持的内容编码
  • Accept-Language: 用户代理所支持的语言集
  • Authorization 用户代理的认证信息,(与状态码401有关)
  • Expect 期望某种特定的行为(与状态码417有关)

Host (必要字段):告知服务器请求的资源所处的互联网主机名和端口号

等等

5. 响应首部字段

由服务器端向客户端返回响应报文中所使用的字段

Accept-Ranges :bytes 或者none, 告知客户端服务器是否能处理范围请求

Age: 告知客户端,源服务器在多久之前创建了响应。值单位为秒。

Location : 与重定向URI 相关,与状态码(3XX)相关

Aetry-After: 告知客户端在多久之后重试再次发送请求

Serve :告知客户端服务器上安装的http 服务器应用程序的信息

Vary : 对缓存进行控制,源服务器会向代理服务器传达关于本地缓存使用方法的命令,仅仅对请求中含有相同vary 指定首部字段的请求返回缓存。

6. 实体首部字段

请求和响应 实体content所使用的首部字段

  • Content-Type: 资源类型

7. 为cookie 服务的首部字段

cookie 工作机制用户识别以及状态管理,web网站为了管理用户状态,会通过web浏览器,把一些数据l临时写入调用用户的计算机内,接着当用户访问该web网站时,可通过通信方式取回之前发放的Cookie。由于可校验cookie 有效期以及发送方的域,路径,协议等信息,所以正规发布的Cookie内的数据不会因来自其他web站点和攻击者的攻击而泄漏。

expires =Date Cookie 有效期

path=PATH 将服务器上的文件目录作为cookie 的使用对象

domain 作为cookie 适用对象的域名

Secure 仅在https 安全通信时才发送cookie

HttpOnly 加以限制,使Cookie 不能被js脚本访问

8. 其他首部字段

  • X-Frame-option: 属于响应首部,用于控制网站内容在其他Web 网站的Frame标签内显示的问题 DENY (拒绝); SAMEORIGIN : 仅在同源域名下的页面匹配上许可,也就是说可以放在frame标签内显示。

DNT 属于请求首部 拒绝个人信息被收集 0 :同意被追踪,1 : 拒绝被追踪

P3P 响应首部 ,保护用户隐私

相关推荐
创小匠37 分钟前
创客匠人深度:创始人 IP 在小红书的内容策略与私域沉淀方法论
大数据·网络·tcp/ip
weixin_456588152 小时前
【web 安全】从 HTTP 无状态到现代身份验证机制
前端·web安全·http
哆啦A梦的口袋呀2 小时前
《HTTP权威指南》 第3章 HTTP报文
网络·网络协议·http
yuren_xia2 小时前
Java 公平锁与非公平锁详解
java·网络
chao_7893 小时前
死锁相关知识
网络协议·游戏·测试·死锁
怪只怪满眼尽是人间烟火4 小时前
SQL分片工具类
网络·数据库·sql
睡觉z5 小时前
LVS+Keepliaved高可用群集
网络·智能路由器·lvs
孙克旭_5 小时前
day037-openssh服务与http协议
linux·运维·网络·网络协议·http
liulilittle6 小时前
主流防火墙策略绕过漏洞的修复方案与加固实践
网络·安全·网络安全·信息与通信·ip·通信
萧咕6 小时前
Web3革命:重构互联网的四大支柱
网络协议·数据分析·web3