문서
App Router 사용하기
compress

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로 전환하고 싶다면, nginx가 압축을 처리할 수 있도록 compress 옵션을 false로 설정하세요.

알아두면 좋은 점:

  • Vercel의 Next.js 애플리케이션의 경우, 압축은 Next.js가 아닌 Vercel의 Edge Network에 의해 처리됩니다. 자세한 내용은 Vercel 문서를 참조하세요.