问题标签 [expires-header]
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.
http - ETag 与标头过期
我环顾四周,但无法确定是否应该同时使用 ETag和Expires Header或其中一个。
我正在尝试做的是确保我的闪存文件(和其他图像以及不仅在这些文件发生更改时更新)。
我不想做任何特别的事情,比如更改文件名或在 url 的末尾放置一些奇怪的字符以使其不被缓存。
另外,我需要在我的 PHP 脚本中以编程方式做些什么来支持这一点,还是全部是 Apache?
asp.net-mvc-2 - 如何在我的 IIS 6 ASP.NET MVC Web 应用程序中为我的静态内容启用过期标头?
我们正在运行一个 ASP.NET MVC 2.0 Web 应用程序,它在带有 IIS 6.0 的 Windows Server 2003 上运行。我知道如果我们使用 IIS 7来实现客户端缓存会很容易。然而,这是我无法控制的。此外,在 IIS 6 本身中更改设置可能非常容易。然而,再一次,我无法控制它。
我正在寻找的是一个可以在我的项目本身中实现的解决方案(也许是 web.config?),它允许我为静态内容(JS、CSS、图像等)指定过期标头。
iphone - 移动浏览器对过期标头有哪些支持?
是否有任何关于移动浏览器支持过期标头的良好文档?我最感兴趣的是:
- 苹果手机
- 安卓
- 视窗电话 7
iis - IIS 的 mod_pagespeed 的替代方案
IIS 的 mod_pagespeed 是否有替代方案?我想做一些智能缓存并以智能方式设置过期标头。
asp.net - 您如何使用 IIS 6 在 asp.net 中实现远期过期标头
我们正在运行一个 ASP.NET MVC 2.0 Web 应用程序,它在带有 IIS 6.0 的 Windows Server 2003 上运行。我知道使用 IIS7+,您可以使用:
有没有办法获得与 IIS6 相同的功能?我们无权访问服务器设置,因此我们也无法以这种方式更改它。
caching - 关于处理过期标题、etag 和内容更新的想法?
我已经在我的网站上实现了与服务器无关的 eTag,我现在正在考虑添加过期标头以防止大多数 304 请求。
我担心使用长过期标头,因为如果您需要更新内容,则很难强制刷新。而且我也不喜欢用版本控制查询字符串来弄乱我的代码,例如:
因此,我正在考虑将过期标头设置为几乎所有内容的短时间,例如 10 分钟。这样,我可能只有 10 分钟的陈旧内容窗口,但对于正常的浏览会话,我将停止大部分 304。即使他们确实停留更长时间,除非内容发生变化,否则我只会每 10 分钟提供一次 304。
它看起来很优雅,但我已经看到很多网站使用上述版本控制查询字符串方法,甚至谷歌的 mod_pagespeed 也有一个或多或少自动执行版本控制的选项,所以我只是好奇这是一个可靠的方法还是我错过了一些使它不切实际的东西。
谢谢
heroku - 如何在 Heroku Cedar 上的 Rails 3.1.1 应用程序上获取 Gzip 和 Expires Header?
我在Heroku Cedar上运行Rails 3.1.1应用程序。默认情况下,此堆栈不会Gzip并在 assets 上设置Expires Headers。有一些关于此的文档,但不是很清楚:http ://devcenter.heroku.com/articles/http-routing
有人可以给我一段代码来激活它吗?
非常感谢你
php - 为什么“过期”是 1981 年?
我的 CRON 作业返回了 CRON 作业不起作用的错误。在那里:
我想知道为什么Expires
设置为“1981”。有什么意义?
html - 如何为缓存的 html 文件触发浏览器 html 刷新?
YSLOW 建议: 对于静态组件:通过设置远期 Expires 标头来实施“永不过期”策略....如果您使用远期 Expires 标头,则必须在组件更改时更改组件的文件名。在雅虎!我们经常将此步骤作为构建过程的一部分:版本号嵌入在组件的文件名中,例如 yahoo_2.0.6.js。 http://developer.yahoo.com/performance/rules.html
我想为我的大部分静态页面利用缓存,并在版本 # 更改时重新加载 js 文件。我为我的 .js 文件设置了版本号,但我的 main.html 页面将 Expires 设置为未来,因此它不会重新加载,因此不会重新加载 js 文件。理想情况下,我想告诉浏览器(使用通灵技术)在发布新版本的站点时重新加载 main.html。我可以让我的 main.html 页面总是重新加载,但是我失去了缓存的好处。我不是在寻找 ctrl-F5 答案,因为这需要为我们的用户自动发生。
我认为答案是:main.html 不能被缓存,但我想听听其他人在做什么来解决这个问题。您如何获得最佳缓存与重新加载优势。
谢谢。
.htaccess - 过期和 304 未修改请求
为什么当我设置 Expires 并禁用 Etags 时,我仍然收到 304 响应?
这是我的 .htaccess 文件: