nginx中的etag是如何生成的
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章主要介绍"nginx中的etag是如何生成的",在日常操作中,相信很多人在nginx中的etag是如何生成的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"ngi
千家信息网最后更新 2025年02月04日nginx中的etag是如何生成的
这篇文章主要介绍"nginx中的etag是如何生成的",在日常操作中,相信很多人在nginx中的etag是如何生成的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"nginx中的etag是如何生成的"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
nginx 中 ETag 的生成
我在网上找到一些资料与源代码了解到了 etag
的计算方法。由 python
伪代码表示计算方法如下
etag = '{:x}-{:x}'.format(header.last_modified, header.content_lenth)
源码: ngx_http_core_modules.c[2]
etag->value.len = ngx_sprintf(etag->value.data, "\"%xT-%xO\"",
r->headers_out.last_modified_time,
r->headers_out.content_length_n)
- etag->value.data;
总结:nginx
中 etag
由响应头的 Last-Modified
与 Content-Length
表示为十六进制组合而成。
随手在我的 k8s 集群里找个 nginx
服务测试一下
$ curl --head 10.97.109.49
HTTP/1.1 200 OK
Server: nginx/1.16.0
Date: Tue, 10 Dec 2019 06:45:24 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 23 Apr 2019 10:18:21 GMT
Connection: keep-alive
ETag: "5cbee66d-264"
Accept-Ranges: bytes
由 etag
计算 Last-Modified
与 Content-Length
,使用 js
计算如下,结果相符
> new Date(parseInt('5cbee66d', 16) * 1000).toJSON()
"2019-04-23T10:18:21.000Z"
> parseInt('264', 16)
612
Last-Modified,ETag 与协商缓存
我们知道协商缓存有两种方式
Last-Modified
/if-Modified-Since
ETag
/If-None-Match
既然在 nginx
中 ETag
由 Last-Modified
和 Content-Length
组成,那它便算是一个加强版的 Last-Modified
了,那加强在什么地方呢?
** Last-Modified
是由一个 unix timestamp
表示,则意味着它只能作用于秒级的改变**
那下一个问题:如果 http 响应头中 ETag 值改变了,是否意味着文件内容一定已经更改[3]
到此,关于"nginx中的etag是如何生成的"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
生成
学习
方法
意味
更多
缓存
资料
问题
协商
帮助
实用
接下来
代码
作用
内容
十六进制
地方
文件
文章
方式
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
华为服务器默认登录地址密码
apache服务器安装
商城优惠券数据库设计
远程数据库1045错误
内部服务器脱机
通信 软件开发
虚拟机的文件服务器
出名的网络安全事件
论地方文献数据库的建设
教育网服务器租用
网络安全 因素
长宁区网络技术转让代理商
网络安全运维技能竞赛试题
局域网络技术大全
ftp服务器配置原理
pe 支持服务器
桐乡软件开发培训学校
石家庄网络安全课程十大品牌
写数据库结构图的软件
数据库考试刷题软件哪个好
服务器远程配置
怎么辨别是不是三星服务器内存
一加玩游戏是哪个服务器
并行工作流数据库设计
企业网络安全工程师职称
aws服务器怎么管理
北京联众网络技术公司
怎么找方舟直链服务器
找不到本地数据库
宝清软件开发有限公司