nginx指定文件类型进行gzip压缩

发布时间 2023-09-22 10:00:02作者: 槑孒

如果在访问Nginx服务器时看到了.gz压缩文件,但其中也包括了不是JavaScript文件的内容,这可能是由于Nginx配置未正确过滤或限制哪些文件应该进行gzip压缩所致。

在Nginx配置中,你可以使用gzip_types指令来指定哪些文件类型应该进行gzip压缩。

以下是一些步骤来确保只有JavaScript文件被压缩,而不是其他文件:

  1. 在Nginx配置中,打开nginx.conf或您的虚拟主机配置文件。

  2. http块或虚拟主机配置块内,确保已经启用了gzip压缩,并且gzip_types包括JavaScript文件的MIME类型。示例配置如下:

    gzip on;
    gzip_types application/javascript text/javascript;
    

    这将确保只有JavaScript文件被gzip压缩,其他文件类型将不受影响。

  3. 保存并退出配置文件,然后重新加载Nginx或重启Nginx服务,以使更改生效。

  4. 清除浏览器缓存或使用无缓存模式,然后重新访问网页,以确保gzip压缩仅应用于JavaScript文件。

如果还是看到不是JavaScript文件的内容被压缩,可能需要检查你的Vite配置,确保它不会将不希望被压缩的文件也打包成JavaScript文件,或者检查前端项目,确保只有JavaScript文件被打包成.gz文件。

如果希望Nginx只对CSS、JavaScript和JSON文件进行gzip压缩,可以在Nginx配置中设置gzip_types来指定这些文件类型的MIME类型。以下是如何设置的示例:

gzip on;
gzip_types application/javascript text/css application/json;

在这个示例中,我们明确列出了三种文件类型的MIME类型:

  • application/javascript: JavaScript文件
  • text/css: CSS文件
  • application/json: JSON文件

这将告诉Nginx只对这些文件类型进行gzip压缩,而不会影响其他文件类型。

确保在更新Nginx配置后重新加载或重启Nginx服务,以使更改生效。这样,Nginx将只对指定的文件类型应用gzip压缩,提高前端资源加载性能。