浏览器重启后不缓存资源

4
这更像是一个普遍的缓存问题。
我的项目中有一些带有asp.net-mvc3/razorext.net 2.0 beta控件的页面。对于这些页面,从firebug收集到的数据来看,浏览器在重启后似乎没有缓存ext.axd资源文件。
具体情况如下:
1. 打开Firefox并访问我的页面; 2. 所有请求都显示200 OK; 3. 如果我按下F5,则所有请求都显示304 Not Modified; 4. 现在,如果我重新启动浏览器,则它会回到Http 200响应。
浏览器是否没有缓存我的资源?是否有一种设置或配置可以使它在不同的浏览器会话中缓存我的资源?
图片链接如下:
1. 进入页面:
enter image description here 2. 按下F5后:
enter image description here

以下是一个单独请求的截图:

enter image description here (1)这些资源被缓存了吗? (2)是否有什么我可以做来缓存它们?

1
提供出色的调试信息,点个赞。 - usr
2
只是想确保这个答案不会在下面丢失,但这是正确的缓存功能。在第一次请求之后,请求直接发送到缓存,并且每个行项目都变灰。更多讨论可在http://forums.ext.net/showthread.php?18340-Browser-does-not-cache-resources-after-restart找到。 - geoffrey.mcgill
1
@geoffrey.mcgill 如果您将您的评论发布为答案,我会接受它。 - nilesh
2个回答

2
最初请求的行项目是“黑色”的,并且从原始来源获取。然后将这些项目添加到浏览器缓存中。
在随后的请求中,这些项目直接从缓存中获取,变成了“灰色”。我猜这只是Firebug的一个“特性”。
更多信息可在以下位置找到:

http://forums.ext.net/showthread.php?18340-Browser-does-not-cache-resources-after-restart

如何解释Firebug Net面板中的灰色项目?
希望这可以帮到你。

已经有一段时间了,但值得注意的是,304未修改的响应(没有主体)来自服务器对“If-Modified-Since”头的响应,向浏览器确认缓存版本仍然有效并可以使用。 因此,这些实体被缓存但被验证。 - Szocske

0
通常缓存是由Web服务器控制的。您使用的是哪种Web服务器,以及您的应用程序所在目录的配置是什么?

我得到了答案,ext.net中的资源文件来自缓存,因为灰色的GET部分表示,在重新启动浏览器的每个请求上。 - nilesh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接