3

我刚刚对我的网站运行了 yslow,我对 Expiry Headers 有一个问题:YSlow 给了我一个:在 Add Expires headers 上的 F 级。有 20 个静态组件没有遥远的到期日期。 这些都是css或js文件。

现在,当我转到 IIS (6.0) 并转到 http 标头选项卡时,未选中启用内容过期。从阅读本文看来,这是正确的做法,因为浏览器随后将缓存内容。所以我很困惑为什么 yslow 抱怨。此外,听起来浏览器无论如何都会按修改日期缓存这些数据,所以这整件事毫无意义吗?

因此,如果设置这是一个没有道理的,为什么这不是默认行为?

有人可以澄清一下。

4

2 回答 2

2

这里没有矛盾。您需要做的是在包含静态内容的文件夹上设置内容过期。例如您的图像、css 和脚本文件夹。您可以在 IIS 和其他 Web 服务器中基于文件夹设置内容过期。

于 2011-03-19T02:31:54.380 回答
0

浏览器不知道什么内容是“静态”的;它实际上无法知道,yslow 很可能只是猜测。它可能猜对了……但是默认情况下,Web 服务器中的 Expires 值不正确可能会导致浏览器缓存您根本不希望它们缓存的动态内容。

这就是为什么默认情况下它不是这样设置的原因。

于 2011-03-19T02:50:23.863 回答