Caching 在XPages中缓存CSS和JS资源时;使用运行时优化的javascript和css资源”;

Caching 在XPages中缓存CSS和JS资源时;使用运行时优化的javascript和css资源”;,caching,optimization,http-headers,xpages,lotus-domino,Caching,Optimization,Http Headers,Xpages,Lotus Domino,在XPages中,“使用运行时优化的javascript和css资源”是一个非常酷的特性,因为它将所有js文件合并到一个文件中,将所有css文件合并到一个css文件中 然而,我注意到连接的文件没有被缓存(它们总是返回状态200),当您不使用“使用运行时优化的javascript和css资源”时,它们会缓存(并且返回状态304) 可以减少http请求,但当js和css文件可以通过ETag或上次修改的http头缓存时,从服务器检索js和css文件总是不好的。当您使用“使用运行时优化的javascri

在XPages中,“使用运行时优化的javascript和css资源”是一个非常酷的特性,因为它将所有js文件合并到一个文件中,将所有css文件合并到一个css文件中

然而,我注意到连接的文件没有被缓存(它们总是返回状态200),当您不使用“使用运行时优化的javascript和css资源”时,它们会缓存(并且返回状态304)


可以减少http请求,但当js和css文件可以通过ETag或上次修改的http头缓存时,从服务器检索js和css文件总是不好的。当您使用“使用运行时优化的javascript和css资源”(应用程序属性>XPages选项卡>性能部分>使用运行时优化的javascript和css资源)功能时,有人知道我是否遗漏了什么,或者是否有办法缓存连接的文件.

在URL栏中按Enter键将尊重
Expires
标题并从缓存中获取文件。但如果单击“重新加载”或按F5,则文件将重新加载。这是至少在ChromeFirefox中的行为


从一页导航到另一页时,缓存工作正常。

运行时优化的资源被缓存

下面是一个例子:

如果您正在使用Chrome Developer工具查看网络活动和响应代码,请确保它未设置为“禁用缓存(当DevTools打开时)”:

我刚刚在9.0.1服务器上检查了这一点,您的说法似乎不完全正确:缩小的(CSS和JavaScript)资源被缓存:默认情况下,服务器会添加一个
Expires
头,该头在未来10天。这将导致浏览器(在此期间)根本不执行对这些资源的请求,并立即从缓存中为它们提供服务。同意。资源已缓存。感谢您的回答。如@Panu所述,我当时正在按f5键。另外,我不知道状态(200缓存)(也称为bfcache)和(304)之间的区别。(本的回答)。Http头过期很酷,我们可以从Domino Designer中的应用程序>属性>基本选项卡>自定义浏览器缓存过期设置它。谢谢您的回答。你明白了,我是在按f5而不是enter键,当我前面检查“使用运行时优化的javascript和css资源”时,你会说这个行为。让我困惑的是:当我取消选中“使用运行时优化的javascript和css资源”并点击f5时,文件(js和css)被缓存并返回304状态。最后,我了解了http(200bFCache)和304的区别,这就是http报头过期,如果从那以后修改。请参阅我对@Per答案的评论。