65

我听说很多人应该在他们的网页上使用gZip以便更快地访问和下载,并且它还可以节省带宽。

那么这个 gZip 压缩是什么,它是如何使下载速度更快的呢?它是压缩 HTML 和图像还是仅压缩 HTML。

如果我要开始在我的网络应用程序中使用 gZip,我需要考虑什么?它是否有任何服务器或浏览器限制,或者它是否仅支持特定编码。

4

3 回答 3

70

GZip 是一种数据压缩形式——即,它需要一大块数据并使其更小。通过解压压缩文件可以恢复原始数据。

它与 Web 应用程序和网站相关,因为 HTTP 协议包括对正在发送的数据进行 gzip 压缩的能力。

这意味着,当它在使用时,您为该站点提供服务的带宽成本会更低,因为访问该站点的人将下载较小的文件。

使用 GZip 有一些注意事项,但总的来说,使用 gzip 通常比不使用更好 - 例如,压缩和解压缩文件确实需要时间和处理器能力,但通常这不是问题因为这样做所花费的时间通常少于下载更大文件所节省的时间。因此,尽管浏览器必须解压缩文件,但总体效果是节省时间。

GZip可以压缩所有文件;文件类型或编码没有任何区别。显然,有些文件可以比其他文件更有效地压缩,因此节省的带宽会有所不同——HTML 等文本文件的效果最好;图像不会被 gzip 压缩太多,因为它们已经内置了一些压缩功能。一些文件(例如那些已经像文件一样被高度压缩的.zip文件)实际上在 gzip 压缩时可能会稍微变大一些,因为它们无法进一步压缩,但 gzip 仍然需要将其元数据添加到文件中。但这些都是边缘情况,并没有太大区别。

跨 HTTP 的 GZip 通常完全透明地发生。最终用户应该完全不知道它正在发生;浏览器会在幕后为他们做这件事。从网络服务器端,只需打开网络服务器软件中的配置设置即可。从您的角度来看,这就是您需要知道的全部内容;只需在您的服务器上设置 gzip 设置(或要求您的 ISP 执行此操作)。它很可能已经在您的网站上处于活动状态,而您甚至都不知道。

于 2013-05-22T13:18:05.653 回答
5

GZip 在向浏览器提供请求时压缩 HTML、JavaScript 和 CSS 等文件。随着文件大小的减小,它以更快的方式提供给用户。并非所有浏览器都支持压缩,但现在所有现代浏览器都支持它。强烈建议使用 Gzip,但它有一个缺点,即会增加服务器的 CPU 使用率,这有时可能是一个问题。将 Gzip 与客户端缓存一起使用将有助于提高性能。

于 2013-05-22T12:19:12.337 回答
0

Gzip 是一种压缩 JavaScript 和 CSS 以提高网页速度的方法。最终,我们的网站加载时间随着整体速度的提高而减少。

于 2020-01-27T12:10:12.657 回答