텍스트 압축 사용

총 네트워크 바이트를 최소화하려면 텍스트 기반 리소스를 압축하여 제공해야 합니다. Lighthouse 보고서의 추천 섹션에는 압축되지 않은 모든 텍스트 기반 리소스가 나열됩니다.

Lighthouse 사용 설정 텍스트 압축 감사 스크린샷

Lighthouse에서 텍스트 압축을 처리하는 방법

Lighthouse는 다음과 같은 모든 응답을 수집합니다.

  • 텍스트 기반 리소스 유형을 사용합니다.
  • br, gzip 또는 deflate로 설정된 content-encoding 헤더는 포함하지 마세요.

그러면 Lighthouse는 GZIP으로 각 항목을 압축하여 잠재적 절감 금액을 계산합니다.

응답의 원래 크기가 1.4KiB보다 작거나 압축으로 인한 절감 가능성이 원래 크기의 10% 미만인 경우 Lighthouse는 결과에 해당 응답을 신고하지 않습니다.

서버에서 텍스트 압축을 사용 설정하는 방법

이 감사를 통과하려면 이러한 응답을 제공한 서버에서 텍스트 압축을 사용 설정하세요.

브라우저는 리소스를 요청할 때 Accept-Encoding HTTP 요청 헤더를 사용하여 어떤 압축 알고리즘을 지원하는지 나타냅니다.

Accept-Encoding: gzip, compress, br

브라우저에서 Brotli(br)를 지원하면 Brotli를 사용해야 합니다. 다른 압축 알고리즘보다 리소스의 파일 크기를 더 줄일 수 있기 때문입니다. how to enable Brotli compression in <X>를 검색합니다. 여기서 <X>은 서버의 이름입니다. 2022년 12월부터 iOS용 Safari를 제외한 모든 주요 브라우저에서 Brotli가 지원됩니다. 업데이트는 브라우저 호환성을 참고하세요.

GZIP을 Brotli로 대체하여 사용합니다. GZIP은 모든 주요 브라우저에서 지원되지만 Brotli보다 효율성이 떨어집니다. 예는 서버 구성을 참고하세요.

서버는 Content-Encoding HTTP 응답 헤더를 반환하여 어떤 압축 알고리즘을 사용했는지 표시해야 합니다.

Content-Encoding: br

Chrome DevTools에서 응답이 압축되었는지 확인하기

서버가 응답을 압축했는지 확인하려면 다음 안내를 따르세요.

Control+Shift+J (Mac의 경우 Command+Option+J)를 눌러 DevTools를 엽니다. '네트워크' 탭을 클릭합니다.

[의견]: <> (다음 목록은 web.dev의 단축 코드이지만 영어에서 어떤 언어로도 번역되지 않았습니다.) 1. Control+Shift+J (Mac의 경우 Command+Option+J)를 눌러 DevTools를 엽니다. 2. Network 탭을 클릭합니다. 3. 원하는 응답이 발생한 요청을 클릭합니다. 4. 헤더 탭을 클릭합니다. 5. 응답 헤더 섹션에서 content-encoding 헤더를 확인합니다.

콘텐츠 인코딩 응답 헤더
content-encoding 응답 헤더입니다.

응답의 압축된 크기와 압축 해제된 크기를 비교하는 방법은 다음과 같습니다.

[의견]: <> (다음 목록은 web.dev의 단축 코드이지만 영어에서 어떤 언어로도 번역되지 않았습니다.) 1. Control+Shift+J (Mac의 경우 Command+Option+J)를 눌러 DevTools를 엽니다. 2. Network 탭을 클릭합니다. 3. 큰 요청 행을 사용 설정합니다. 넓은 요청 행 사용을 참고하세요. 4. 크기 열에서 원하는 응답을 찾습니다. 맨 위 값은 압축된 크기입니다. 하단 값은 압축 해제된 크기입니다.

네트워크 페이로드 축소 및 압축도 참고하세요.

스택별 안내

Joomla

Gzip 페이지 압축 설정 (시스템 > 전역 구성 > 서버)을 사용 설정합니다.

WordPress

웹 서버 구성에서 텍스트 압축을 사용 설정합니다.

자료