Nginx Gzip Compression 설정
HTTP 에서도 압축전송을 지원 합니다. 이는 Header 에 압축에 대한 정보가 다음과 같이 담깁니다. Nginx Gzip Compression 설정 은 다음과같이 하시면 됩니다.
1 |
Content-Encoding: gzip |
압축전송을 하게되면 트래픽을 줄일 수 있어, 서버 호스팅을 이용하는 분들에게는 큰 도움이 됩니다. 사용법은 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# gzip compression 켜기 gzip on; # 파일을 압축하기 위한 최소 파일 크기 gzip_min_length 1100; # gzip 버퍼 크기, 4 32k 면 대부분 상황에서 적당한 크기 입니다. gzip_buffers 4 32k; # 압축을 적용할 파일타입. 파일타입은 MIME 타입을 말함. gzip_types text/plain application/x-javascript text/xml text/css; # 헤더 응답에 "Vary: Accept-Encoding" 리턴. gzip_vary on; # 압축률 지정. 1 ~ 9 사이이며 9가 최고등급의 압축. gzip_comp_level 9; # 압축을 사용하기 위해서 클라이언트에게 HTTP 1.1 사용하도록 요구함. gzip_http_version 1.1; |
잘 동작하는지 다음과 같이 테스트를 할 수 있습니다.
1 2 3 4 5 6 7 8 9 10 11 |
curl --header "Accept-Encoding: gzip,deflate,sdch" -I http://linux.systemv.pe.kr HTTP/1.1 200 OK Server: nginx/1.6.1 Date: Mon, 03 Nov 2014 14:22:28 GMT Content-Type: text/html; charset=UTF-8 Connection: keep-alive Keep-Alive: timeout=5 Vary: Accept-Encoding X-Powered-By: PHP/5.3.3 X-Pingback: http://linux.systemv.pe.kr/xmlrpc.php Content-Encoding: gzip |
“Content-Encoding: gzip” 이 보이면 정상으로 설정이 된 것 입니다.