304和200的差异(来自磁盘缓存)

问题描述 投票:0回答:1

nginx版本:nginx / 1.14.0(Ubuntu)

[尝试研究如何处理浏览器缓存。

您能向我解释为什么在使用html的情况下,浏览器将请求发送到服务器,而在使用CSS的情况下却没有向服务器发送请求吗?

换句话说,为什么在html的情况下我们有304,而在css的情况下为什么我们有200(来自磁盘缓存)?

enter image description here

enter image description here

http browser-cache
1个回答
0
投票

服务器未向浏览器提供任何有关将其资源缓存多长时间的信息。 (也就是说,它不包含Cache-ControlExpires标头。)因此,浏览器可以自由提出自己的启发式新鲜度,如RFC 7234:]中所述。

由于原始服务器并不总是提供明确的到期时间,当明确的时间时,缓存可以分配启发式到期时间未指定,使用使用其他标头字段的算法值(例如Last-Modified时间)以估算合理的值到期时间。

[大概浏览器为静态CSS资源分配的刷新时间比为HTML页面分配的刷新时间更长。这很有道理。

如果您关心如何缓存资源,则简单地回答-使用适当的缓存头提供明确的指示。

© www.soinside.com 2019 - 2024. All rights reserved.