在服务器响应上应用 etag 时,我们不应该为状态为 4xx 或 5xx 的响应发送 etag 吗? [关闭]

Posted

技术标签:

【中文标题】在服务器响应上应用 etag 时,我们不应该为状态为 4xx 或 5xx 的响应发送 etag 吗? [关闭]【英文标题】:While applying etag on the server response, should we not send etag for the responses with status as 4xx or 5xx? [closed] 【发布时间】:2021-07-01 06:07:49 【问题描述】:

我正在为所有回复应用etag,但想知道是否为状态为 4xx 或 5xx 的回复应用 etag

【问题讨论】:

为什么要将ETag 应用于客户端或服务器错误页面?客户端/浏览器未请求错误页面。 【参考方案1】:

规范描述When to Use Entity-Tags and Last-Modified Dates:

在对 GET 或 HEAD 的 200 (OK) 响应中,源服务器应该发送一个实体标签验证器...

所以,不,没有理由为 4xx 或 5xx 响应发送 ETags。这些代码表明无法生成有效响应;因此,ETag 没有任何表示可以有意义地适用于。

【讨论】:

以上是关于在服务器响应上应用 etag 时,我们不应该为状态为 4xx 或 5xx 的响应发送 etag 吗? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

节点快递:如何找出给定etag的状态是不是为304

加载/刷新时 ASP.net eTag 缓存缩略图

Nginx如何启用ETag,提高访问速度

apache 2.4.9 http响应头信息不显示etag, 刷新相同页面后,状态码一直显示200(from memory cache)

ETag

HTTP状态码304与ETag详解