Menu

compress

默认情况下,Next.js 在使用 next start 或自定义服务器时,会使用 gzip 压缩渲染内容和静态文件。这是对未配置压缩的应用程序的一种优化。如果应用程序中已经配置了压缩,Next.js 将不会添加压缩。

值得注意的是

  • 当在 Vercel 上托管应用程序时,压缩首先使用 brotli,然后是 gzip
  • 你可以通过查看响应中的 Accept-Encoding(浏览器接受的选项)和 Content-Encoding(当前使用的)头来检查是否启用了压缩以及使用了哪种算法。

禁用压缩

要禁用 压缩,请将 compress 配置选项设置为 false

next.config.js
module.exports = {
  compress: false,
};

我们不建议禁用压缩,除非你在服务器上已经配置了压缩,因为压缩可以减少带宽使用并提高应用程序的性能。

更改压缩算法

要更改压缩算法,你需要配置自定义服务器,并在 next.config.js 文件中将 compress 选项设置为 false

例如,你使用 nginx 并希望切换到 brotli,请将 compress 选项设置为 false,以允许 nginx 处理压缩。

值得注意的是

  • 对于 Vercel 上的 Next.js 应用程序,压缩由 Vercel 的边缘网络处理,而不是 Next.js。有关更多信息,请参阅 Vercel 文档