问题标签 [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.
asp.net-mvc - MVC 的 HTTP 缓存 - Last-Modified 响应标头始终等于 Date
我没有完全理解 .NET MVC 的 HTTP 缓存是如何工作的,因为它看起来并不像实际上是在检索缓存的资源文件。我想我需要在某处添加一些额外的代码......
首先,让我们看看我是如何在静态内容(即图像)上设置 HTTP 缓存的。在我的 web.config 中,我有以下内容:
这导致我的应用程序中的图像似乎正在正确缓存。当我查看图像的响应标头时,我看到了这个(删除了不必要的标头):
我看到了一个很好的 ETag 值,而我的 Expires 应该是这样的。此外,Last-Modified 日期是过去的日期。我理解 Last-Modified 日期是服务器最后一次被要求提供该文件的日期。
现在让我们看一下已被 MVC 优化的 javascript 文件的响应标头。提醒一下,这篇文章指出“捆绑包在捆绑包创建后一年设置 HTTP Expires 标头。 ”
MVC 缓存文件的响应标头缺少一个 ETag。静态内容响应标头中不存在“public”的 Cache-Control 值。最后,Expires 是 Last-Modified 日期后 1 年,这是正确的,但 Last-Modified 日期始终与 Date 值相同。对我来说,这些响应标头看起来像是第一次从服务器请求资源并缓存时的样子,而不是随后请求并从缓存中检索资源时的样子。
提前感谢您的任何见解。
更新:它实际上似乎在 IE 中进行缓存。后续请求的 Last-Modified 日期仍然是过去的值。不过,我在 FF 或 Chrome 中没有看到这一点。我确认在这两种浏览器中,我都没有禁用缓存。是什么赋予了?
.net - 如何在 ASP.NET MVC 控制器中设置 Expires 日期/时间标头?
我有一个门户,它从每天凌晨 1 点更新的数据源中提取数据。所以我想设置从我的asp.net mvc控制器请求数据在凌晨2点过期的ajax调用的过期时间。
如何在 ajax 函数调用的控制器上设置特定的到期日期/时间?
varnish - Varnish 过期标头配置
请帮助我在清漆配置中添加过期标头。max_age 已在 vcl_fetch 中定义,需要根据 max_age 添加 expires header。
stored-procedures - 如何根据时间将状态更改为“活动”或“过期”
我想根据时间active
或Expire
根据时间更改状态,请帮助我构建我的代码。我附上了我的构建代码。
java - 使用 Play 框架和 Java 进行缓存
我正在使用 Play 和 Java 运行应用程序,我需要为各种类型的资产设置到期日期:图像、css、javascript 等。
我在 conf/routes 文件中有以下内容:
我能够为一个单独的文件设置到期日期application.conf
:
但我无法为整个文件夹设置它。我努力了
但什么也没发生。我希望为 /js/pages 文件夹中的所有内容设置到期日期。
我也试过
根据 http://www.jamesward.com/2014/04/29/optimizing-static-asset-loading-with-play-framework上的说明
也
每个文档http://www.playframework.com/documentation/1.2.3/configuration#http
这些都不起作用。上面的更改是在 application.conf 中完成的。
我知道有一种方法可以通过定义控制器来更改我想要为其设置到期日期的路由的 response( )
但我想知道如何从 application.conf 文件中配置资产的到期日期。
我们的应用程序在S3 Linux 实例上运行,因此不能在服务器上配置过期日期。
谢谢!
css - ExpiresByType text/css 规则会影响网站上的所有 .css 文件吗?
以下规则会影响站点上的所有 .css 文件,还是只影响根目录或某个文件夹中的文件?
javascript - ExpiresByType text/x-javascript 和谷歌分析
在我的网站上使用最新的 JavaScript 代码直接在 body 标记之后实施 Google Analytics 之前,我的 .htaccess 中有并且仍然有这个代码:
这是否意味着在我实施分析代码之前访问过该网站的每个用户都会因为 javascript 被缓存而跳过它?
apache - MediaWiki 发送错误的标头过期
我有 Debian、Apache、MediaWiki。我在 .htaccess 中设置了 Expires 加一个月。MediaWiki 发送标头 Expires : Thu, 01 Jan 1970 00:00:00 GMT。但如果我创建任何简单的脚本或文件,它会显示正确的信息。其他人遇到过这个吗?我在许多 MediaWiki 网站上都注意到了这一点。谢谢你。
我使用这个 .htaccess:https ://raw.githubusercontent.com/MaxKorz/htaccess/master/.htaccess 但编辑过期超过一个月。
internet-explorer - IE不尊重过期
IE(7 -10)似乎不尊重过期。我打开提琴手并正在检查。如果响应有一个 etag,那么它会执行 304,否则它会为在未来 1 年到期的资源执行 200。我也尝试设置最后修改。它似乎不起作用。在 chrome 中,当有一个过期标签时..它甚至不会发送到服务器(对于 304)它已经缓存了它。这是一些 Fiddler 标头
并带有电子标签
根据 Ruud 的建议..这是请求/响应
apache - Apache2 中的负特定 FilesMatch
我想为除 2-3 个文件之外的所有文件设置到期日期如何在 apache2 中使用负文件匹配
现在我通过将所有其他文件添加到文件匹配列表来实现这一点。
反正有没有使用类似 FilesNotMatch 的东西
或类似的东西