1

我从 5 个普通的人类可读的 JavaScript 文件开始——它们总共大约 10 KB。

使用YSlow后,我决定合并 5 个文件并使用 Dean Edwards 的打包器打包它们。现在我有 1 个 4.5 KB 的文件。

当我重新运行 YSlow 时,它现在在“统计”下的已准备好的缓存中显示 JavaScript 文件,以前(当我有单独的文件时)5 个文件将被缓存。

所以我现在减少了 4 个 HTTP 请求,但准备好的缓存的总页面重量增加了 4.5 KB。

难道我做错了什么?

我仍然计划在我的 JavaScript 文件夹中放置一个远期到期日期标头,因此这个问题可能会消失,但我仍然想知道为什么它不会缓存 JavaScript 文件。

4

1 回答 1

0

我认为您根本没有做错任何事情,您正在遵循所有基本的最佳实践。

当您从未expires正确设置的网络服务器下载某些内容时,我假设是这种情况,因为您想修复它,准备好的缓存总是会更高,因为 YSlow 认为浏览器需要下载它,即使它已经缓存了一切。

这是因为缓存在下载时设置为过期,因为没有 Expires 标头。更新您的过期时间以延长有效期肯定会解决您的问题。

于 2009-12-03T09:29:05.170 回答