YSlow说我的JavaScript文件在合并5个文件并打包后不再被缓存
-
10-07-2019 - |
题
我从5个普通的人类可读JavaScript文件开始 - 总共大约10 KB。
使用 YSlow 后,我决定合并5个文件并使用Dean Edwards打包'打包者。现在我有一个4.5 KB的文件。
当我重新运行YSlow时,它现在在'statistics'下的primed缓存中显示JavaScript文件,之前(当我有单独的文件时)5个文件将被缓存。
所以我现在减少了4个HTTP请求,但是已准备好的缓存的总页面权重增加了4.5 KB。
我做错了吗?
我仍然计划在我的JavaScript文件夹上放置一个远期过期日期标题,这样这个问题可能会消失,但我仍然有兴趣知道为什么它不会缓存JavaScript文件。
解决方案
我认为你没有做错任何事,你正在遵循所有基本的最佳实践。
当您从没有正确设置expires
的网络服务器下载某些内容时,我认为是这种情况,因为您想要修复它,因为YSlow认为浏览器需要下载,因此引导的缓存将始终更高即使它已经缓存了一切。
这是因为缓存在下载时设置为过期,因为没有Expires标头。更新您的过期以使有效期过期肯定会解决您的问题。
其他提示
阅读这篇文章。这里他们展示了如何在升级文件后重新加载缓存。
不隶属于 StackOverflow