ETag改变时响应体也会改变吗

本篇内容主要讲解“ETag改变时响应体也会改变吗”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ETag改变时响应体也会改变吗”吧!

创新互联建站是一家集网站建设,宜秀企业网站建设,宜秀品牌网站建设,网站定制,宜秀网站建设报价,网络营销,网络优化,宜秀网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

不一定,由服务器ETag 的生成算法决定。详见 你知道 http 响应头中的 ETag 是如何生成的吗

比如 nginx 中的 etaglast_modifiedcontent_length 组成,而 last_modified 又由 mtime 组成

当编辑文件却未更改文件内容时,mtime 也会改变,此时 etag 改变,但是文件内容没有更改。 

http 服务中静态文件的 Last-Modified 根据什么生成

一般会选文件的 mtime,表示文件内容的修改时间

nginx 也是这样处理的,源码见: ngx_http_static_module.c[1]

    r->headers_out.status = NGX_HTTP_OK;
   r->headers_out.content_length_n = of.size;
   r->headers_out.last_modified_time = of.mtime;
 

那为什么使用 mtime 而非 ctime 

文件系统中 mtime 和 ctime 指什么,都有什么不同

linux 中,

  • mtime:     modified time 指文件内容改变的时间戳
  • ctime:     change time 指文件属性改变的时间戳,属性包括     mtime。而在 windows 上,它表示的是     creation time

所以 ctime 会比 mtime 要大一些,使用 stat 查看文件属性如下

$ stat hello.txt
 File: ‘hello.txt’
 Size: 30              Blocks: 8          IO Block: 4096   regular file
Device: fd01h/64769d    Inode: 917526      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2019-12-10 16:15:55.253325208 +0800
Modify: 2019-12-10 16:15:52.740653330 +0800
Change: 2019-12-10 16:15:52.742653069 +0800
Birth: -

而 http 服务选择 Last_Modified 时一般会选择 mtime

到此,相信大家对“ETag改变时响应体也会改变吗”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


网站标题:ETag改变时响应体也会改变吗
网址分享:http://pwwzsj.com/article/pegscp.html