问题标签 [cache-control]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
12102 浏览

http - 如何在jsp页面中停用缓存

我知道有一个 HTTP 响应标头指令可以禁用页面缓存:

我可以通过“手”修改标题:

但是有没有一种“好”的方法可以让 JSP 解释器在服务器响应中返回这个标题行?

(我检查了 <%@page ...%> 指令。似乎没有这样的东西。)

0 投票
2 回答
9431 浏览

iis - 如何在 IIS 中设置静态文件的可缓存性?

我在基于 IIS 6 的网站上的文件夹中有一些静态图像,我希望尽可能少地下载这些图像(以节省带宽)。我已将内容过期设置为 30 天后过期。我可以在 IIS 中做些什么来尝试最大化浏览器、代理和网关缓存的缓存吗?

比如添加一个Cache-Control头?还要别的吗?

0 投票
2 回答
3491 浏览

http - HTTP Cache-Control:不存在时可接受的默认行为是什么?

我遇到了一些 HTTP 缓存问题,这是由于一些下游应用程序没有将 Cache-Control 标头放在时间敏感数据上。我需要证明这是一个破碎的情况。

当 HTTP 1.1 不存在 Cache-Control 标头时,是否有任何关于缓存和代理的允许或常见响应处理行为的简洁声明?我看到了 RFC2616,但它似乎没有包含任何关于没有 Cache-Control 标头的响应的规范或应该声明。

0 投票
8 回答
476426 浏览

http - Cache-Control: max-age=0 和 no-cache 有什么区别?

标头Cache-Control: max-age=0暗示内容立即被认为是陈旧的(并且必须重新获取),这实际上与Cache-Control: no-cache.

0 投票
2 回答
2981 浏览

java - 通过java启用浏览器缓存

再会,

我正在使用CacheFilter过滤到我的服务器的某个路径(它将图像流输出到响应流)。我已经在我的 web.xml 中对其进行了如下配置:

使用我的 Firefox,如果我通过地址栏访问我的 url,它会第一次访问服务器,但在后续调用期间使用缓存。但是,如果 url 在我的页面内( ie <img src="..."/>),它似乎一直在访问服务器。

[编辑] 经过几次测试后,通过地址栏访问我的图像并不总是有效。但缓存似乎确实比 . 至于是不是真的,我不确定。

附加信息:我的路径类似于 /my/path?then=some&query=strings。请注意,它没有扩展名(即 gif、png、jpeg),但它的 mimetype 设置正确(image/gif、image/png、image/jpeg)。我不确定缺少扩展名或查询字符串的存在是否有任何影响。(另外,另一个注意事项。虽然我的 url 有查询字符串,但我在测试中一遍又一遍地使用相同的 uri + 查询字符串)。

任何想法为什么?

谢谢

0 投票
2 回答
2359 浏览

asp.net-mvc - 提供 Javascript/CSS 文件时 ASP.NET MVC 更改响应标头

当浏览器请求 Javascript 或 CSS 文件时,有没有办法自动更改 ASP.NET MVC 中的响应标头?

基本上,我希望我的 Javascript 和 CSS 文件在响应标头中显式地使用此集合提供服务:

帮助?

0 投票
1 回答
1433 浏览

http-headers - HTTP/1.1 Cache-Control no-cache 问题

我不希望我的 Java SWT 应用程序缓存临时 Internet 文件。目前我正在处理IE(因为SWT使用本机浏览器),并且无法更改浏览器。

“缓存控制:无缓存”似乎适用于我显示的每种文件类型,除了 wmv。我的“过期”设置为 0。我尝试了各种缓存控制配置,包括 no-cache(wmv 不可用)、no-store(wmv 不可用)、private(允许 wmv 播放但 cahces 临时文件) , max-age (无效), 等等。 wmv 文件只带有可点击的停止按钮。但是点击停止并播放什么也没做。

浏览器显示带有 WMP 的媒体文件,所以我不明白为什么 wmv 无法播放但 mp3/mpg 工作正常(也可以在 WMP 中播放)。

我的响应标头中是否缺少某些内容会强制临时文件不缓存并让 wmv 播放?我在网上找不到任何关于 no-cache 和 wmv 存在问题的信息。

0 投票
5 回答
185967 浏览

http - HTTP 状态码 200(缓存)与状态码 304 有什么区别?

我正在使用 Firefox 的 Google“Page Speed”插件来访问我的网站。

我页面上的一些组件显示为 HTTP 状态:

200 200 (缓存) 304

通过谷歌的“页面速度”。

我感到困惑的是200(缓存)和304之间的区别。

我已经多次刷新页面(但没有清除我的缓存),我的 favicon.ico 和一些图像似乎总是 status=200(缓存),而其他一些图像是 http 状态 304。

我不明白为什么会有差异。

更新

使用谷歌“页面速度”,我收到http://example.com/favicon.icohttp://cdn.example.com/js/ga.js的“200(缓存)”

但是,我收到http://cdn.example.com/js/combined.min.js的 http 状态“304”

我不明白为什么我有两个 JavaScript 文件位于同一目录 /js/ 中,一个返回 http 状态 304,另一个返回 200(缓存)状态代码。

0 投票
3 回答
1841 浏览

browser - 浏览器缓存控制,动态内容

问题:我似乎无法让 FireFox 缓存从动态服务器发送的图像

设置:静态 Apache 服务器与后端动态服务器 (mod_perl2) 的反向代理。

这是服务器的请求 URL。它被发送到动态服务器,其中 cookie 用于验证对图像的访问:

请求标头

动态服务器将图像流回服务器,并提供以下响应:

响应标头

到目前为止,一切都很好(我认为)。但是,在重新加载页面时,图像不会出现缓存,并且会再次发送请求:

请求标头

似乎不应该发生请求,因为浏览器应该已经缓存了图像。实际上,收到了 200 响应,与第一个响应相同,并且图像似乎被重新获取(尽管浏览器似乎正在使用缓存的图像)。

上面的重新加载请求标头中的 Cache-Control: max-age=0 似乎暗示了该问题。

有谁知道为什么会这样?也许是响应中的Via标头导致了问题?

0 投票
1 回答
21341 浏览

configuration - 如何为 Jetty 的 web.xml 中的静态资源配置缓存?

我在读这个: http ://docs.codehaus.org/display/JETTY/LastModifiedCacheControl

它说

Jetty 默认 servlet 允许使用 cacheControl init 参数为静态内容设置缓存控制标头:

但是,我不确定我使用的是默认 servlet。至少 web.xml 中没有这样的配置:

我想为静态资源配置缓存,例如:

/src/webapp/*, 即:/src/webapp/images, /src/webapp/css, /src/webapp/js等。

我应该在我的web.xml?