跳至內容

壓縮 (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 文件 以取得更多資訊。