2

我正在尝试在服务器端缓存 js 文件并遇到此链接

整个想法是获取所有要缓存的 js 文件的内容并写入一个单独的文件,该文件也具有 .js 扩展名。

我无法得到的是,创建的缓存文件只是另一个 js 文件。它与普通的 js 文件有什么不同。对我来说,这就像将所有 js 文件组合成一个大 js 文件并作为缓冲区输出。也不是因为这个而增加了代码/文本的比率。请帮助我理解并避免代码/文本比率的增加。

我在谷歌和这个网站上搜索了很多答案,但无法得到任何接近的答案。所以请投反对票。

4

2 回答 2

1

这样做的目的是减少与服务器的连接数。在这种方法中,下载一个大的 .js 文件,而不是一堆较小的文件。大概您将调整您的 php 以仅包含您实际需要的 js 文件。

于 2012-04-06T02:08:17.810 回答
1

您链接到的文章是系列文章的一部分,该系列文章提出了以下步骤以更高效地 JavaScript 服务器到客户端交付:

  1. 从 HTML 链接单个 js 文件,并设置服务器以让 PHP(或其他服务器端技术处理它。服务器会将您的多个文件合并为一个,以避免额外的、耗时的 HTTP 调用。

  2. 使用 gzip 压缩输出

  3. 缩小代码。这可能意味着几件事,但至少要删除换行符、制表符和空格以减小文件大小。

  4. 在服务器上缓存:不是在每次请求时处理您的 js 文件以组合它们,并且每次都缩小结果,而是将处理后的 js 文件保存在磁盘上,并直接将其提供给客户端。您可以编写一个脚本,在需要时更新该文件(当您的任何源文件被修改时)。

  5. 在客户端缓存:设置正确的响应头,让浏览器在本地缓存你的 js 文件,并且只有在缓存过期时才从服务器请求一个新的。

我认为您是在断章取义地阅读 #4,它仅在 #1 和 #3 之后才有意义。

于 2012-04-06T03:22:59.937 回答