3

下载jQuery的生产副本时,链接旁边会显示该文件是 32K Minified & Gzipped。我被缩小了,但 Gzipped 是什么意思?

它是由像Apache deflate这样的网络服务器压缩的吗?

更新:找到这个网站,看看哪些资源被压缩了http://gzipwtf.com/

4

3 回答 3

3

当您的浏览器向 Web 服务器发送 HTTP 请求时,它可以指定Accept-Encoding字段来指示它支持哪些压缩模式:

GET /scripts/jquery.min.js HTTP/1.1
Host: www.example.com
Accept-Encoding: gzip, deflate

然后服务器可以选择这些模式之一(但不是必须)并在响应标头中指定它:

HTTP/1.1 200 OK
Content-Encoding: gzip
etc.

因此,如果 Web 服务器配置为 gzip javascript 文件,并且浏览器支持它(绝大多数支持),那么文件将被“gzip”。

于 2012-12-19T21:19:35.687 回答
2

是的,它使用了一个名为 mod_gzip 的 Apache 模块:

http://sourceforge.net/projects/mod-gzip/

它(原则上)就像 mod_deflate 一样有效。

于 2012-12-19T21:04:06.047 回答
2

该下载链接指向您可以在网页中热链接到的托管文件。文件本身是缩小的 JavaScript。

当浏览器从其托管服务器请求文件时,它会在传输过程中使用内容标头中指定的 Gzip 压缩进行进一步压缩。当浏览器接收到它时,它会膨胀并存储在浏览器的缓存中。

如果您要在自己的服务器上托管缩小文件,除非您将服务器配置为使用压缩,否则它不一定会在传输过程中被压缩。

于 2012-12-19T21:10:45.477 回答