在进行生产环境部署时,开启 Gzip 压缩可以减小静态资源文件的大小,提高网站的加载速度。
如果要使用 Gzip 压缩技术来减小文件传输大小,需要在两个地方进行配置。
首先,在本地开发环境中,你需要使用一些工具来对需要传输的文件构建压缩版本,比如使用 webpack 构建并压缩 JavaScript 脚本,使用 Gulp 压缩 CSS 样式表或者图片等,这样可以在编译阶段对文件进行一次压缩。
在 Vite 的打包配置文件 vite.config.js
中,可以通过设置 server.compression
来开启 Gzip 压缩。示例代码如下:
import viteCompression from 'vite-plugin-compression';
export default {
// ...
plugins: [
// 开启 Gzip 压缩
viteCompression({
verbose: true,
disable: false,
threshold: 10240, // 文件大小大于该值才启用压缩,单位是字节
algorithm: 'gzip', // 使用 gzip 压缩
ext: '.gz',
}),
],
};
在以上配置中,threshold
表示只有在文件大小大于 10240
字节(即 10KB
)时,才会使用 Gzip 压缩进行压缩。如果你希望所有文件都开启 Gzip 压缩,可以将该值设为 0。
其次,在部署的服务器上也需要开启 Gzip 压缩。当服务器收到浏览器的请求后,如果请求头包含了 Accept-Encoding: gzip
,服务器会返回已经使用 Gzip 压缩过后的文件;否则,服务器会返回未经压缩的文件。你可以通过在 Nginx 或 Apache 配置文件中添加相关配置来开启 Gzip 压缩功能。
#gzip on;
gzip on;
gzip_comp_level 6;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
gzip_http_version 1.1;
需要注意的是,在部署的服务器上开启 Gzip 压缩功能可能会增加 CPU 的负载,因为服务器需要实时压缩文件并且生成压缩后的版本,但是这个压力对于现代计算机来说通常是可以承受的,在提高传输速度和优化网站性能方面,Gzip 压缩仍然是一种非常有效的技术。
箴言:因为这些东西是非常简单的。不要抱怨自己学不会,那是因为你没有足够用心。