Skip to content

2012.01.16 15:39

Apache mod_deflate

조회 수 23387 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

mod_deflate 는 웹 서버에서 출력하는 내용을 압축하는 필터 입니다. 소스의 위치는 modules/filters 에 위치 하고 있습니다.

활성화 방법
Apache 2.2.x 를 컴파일 할때에 --enable-deflate 옵션을 활성화 하여 컴파일을 합니다. 또는 동적 (DSO)로 컴파일이 되어 있는 Apache에서 DEFLATE 모듈만 컴파일 할때는  modules/filters 로 이동을 한 후 Apxs (Apache Extension) 을 이용하여 컴파일을 해주시면 됩니다.
# /usr/local/apache/bin/apxs -i -c -a mod_deflate.c
위와 같이 해주시면 mod_deflate.so 가 apache 의 모듈디렉토리에 올라가고 httpd.conf 파일 안에 등록이 됩니다. 물론 설정은 직접 해주셔야 합니다.

설정 방법
mod_deflate 는 웹 서버 전체 내용을 압축 하려 할때는 전역 으로 설정을 하고 그렇지 않을 때는 디렉토리 설정 부분 (Location) 에 설정을 해줍니다.

아래와 같이 설정을 하시면 됩니다.
# DEFLATE 설정
<IfModule mod_deflate.c>
              # 압축을 진행하는 타입을 text/html, text/plan, text/xml , text/javascript 만 적용합니다.
               AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
               # 압축 레벨 입니다. 1 부터 9까지 설정 가능합니다.
               DeflateCompressionLevel 1
              # 확장자 별 mime type을 설정합니다.
               AddType text/javascript .js
               AddType text/css .css
</IfModule>
위와 같이 설정 하시면 됩니다.

DEFLATE 필터는 모든 리소스 필터 예를 들어 PHP 의 최 하위에서 결과를 압축 하기때문에 타 모듈에 영향을 주지 않습니다. 압축된 결과를 클라이언트에 보낼때는 Content-Encoding: gzip 헤더를 추가 하여 전송합니다.

Proxy 를 이용할때 프록시 대상 서버에서 gzip압축을 진행한다면 해당 내용을 압축 해제를 할 수 있습니다.
SetInputFilter INFLATE 를 이용하면 들어오는 내용의 압축을 해제 할 수 있습니다.

기타 설정 옵션 을 소개 합니다.
DeflateBufferSize 8096 : 버퍼의 사이즈를 설정합니다. 단위는 Byte입니다.
DeflateCompressionLevel 1 : 압축 수준을 설정합니다. zlib 의 기본 값을 사용합니다.
DeflateFilterNote [Input|Output|Ratio] [name] : 로그에 남길 내용을 설정합니다. 입력Byte, 출력 Byte, 압축률
DeflateMemLevel 9 : zlib가 압축을 진행할때 얼마만큼의 메모리를 사용할것인가를 설정합니다.
DeflateWindowSize 15 : zlib가 압축을 진행할때의 window size를 지정합니다. window size가 크면 압축률이 높습니다.

위와 같은 설정 옵션으로 DEFLATE 모듈을 제어 할 수 있습니다.

압축 수준(Compress level)이 높으면 CPU사용량이 증가하므로 적절한 비율에서 압축을 진행합니다. 아래 압축 비율에 대해서 알아 보도록 하겠습니다.

압축수준 용량
0 43984
1 11128
2 10916
3 10764
4 10154
5 9908
6 9831
7 9820
8 9798
9 9793

위와 같은 압축 률을 보이고 있습니다. 일반적인 HTML을 출력을 하는 것입니다. 위와 같은 비율로 압출률이 고정이 되어 있는 것은 아니지만 대략적인 압축 비율을 나타낸것입니다. 비압축과 압축수준 1 의 비율이 가장 크고 그 이상의 수준에서는 별다른 차이가 없고 CPU에 대한 부하율을 따지자면 압축 비율 1이 가장 좋은것 같습니다. 

  1. No Image 01Apr
    by 로키
    2012/04/01 by 로키
    Views 17603 

    (간단한 팁) 우분투에 Apache2 설치하기 ( apt-get )

  2. No Image 03May
    by ADMINPLAY
    2010/05/03 by ADMINPLAY
    Views 26743 

    *** glibc detected *** double free or corruption (!prev): 0x09f1ab80 ***

  3. No Image 07Oct
    by ADMINPLAY
    2008/10/07 by ADMINPLAY
    Views 15507 

    64bit 시스템에 ssl 설치 후 실행 시 X509_free 오류

  4. No Image 10Jan
    by ADMINPLAY
    2009/01/10 by ADMINPLAY
    Views 23798 

    Address already in use: make_sock:could not bind to address 0.0.0.0:80 에러

  5. No Image 24Feb
    by ADMINPLAY
    2010/02/24 by ADMINPLAY
    Views 19594 

    apache + oracle (오라클 DB 한글깨짐)

  6. No Image 26Aug
    by ADMINPLAY
    2010/08/26 by ADMINPLAY
    Views 18807 

    Apache - 도메인 포워딩

  7. No Image 04Mar
    by ADMINPLAY
    2009/03/04 by ADMINPLAY
    Views 13361 

    Apache 1.3.12 httpd.conf 파일 한글설명

  8. No Image 08Oct
    by ADMINPLAY
    2008/10/08 by ADMINPLAY
    Views 14799 

    apache 2.0.x , 2.2.x 버전대 max client 값 수정시

  9. No Image 18Aug
    by ADMINPLAY
    2011/08/18 by ADMINPLAY
    Views 20396 

    Apache 2.2.17 (mod_url 하고 mod_rewrite 충돌)

  10. No Image 16Jan
    by ADMINPLAY
    2012/01/16 by ADMINPLAY
    Views 19641 

    Apache 2.2.21 패치 (mod_proxy_ajp 패치와 apache killer 보완) (9월 13일)

  11. No Image 16Jan
    by ADMINPLAY
    2012/01/16 by ADMINPLAY
    Views 23506 

    apache cronolog를 이용한 Apache Log File 날짜 별로 생성하는 법

  12. No Image 18Mar
    by l2zeo
    2013/03/18 by l2zeo
    Views 11893 

    Apache expires 설정으로 브라우저 캐시

  13. No Image 14Dec
    by ADMINPLAY
    2008/12/14 by ADMINPLAY
    Views 13527 

    apache log 정리

  14. No Image 26Nov
    by ADMINPLAY
    2009/11/26 by ADMINPLAY
    Views 14666 

    apache log에 그림이미지 파일 로그 안남기기

  15. No Image 07Aug
    by ADMINPLAY
    2009/08/07 by ADMINPLAY
    Views 17943 

    Apache Make시 /usr/lib/libexpat.so: could not read symbols: File in wrong format 에러

  16. No Image 16Jan
    by ADMINPLAY
    2012/01/16 by ADMINPLAY
    Views 23387 

    Apache mod_deflate

  17. No Image 10Dec
    by ADMINPLAY
    2009/12/10 by ADMINPLAY
    Views 19119 

    apache server 2.2, Tomcat5.5 로드밸런싱 및 클러스터

  18. No Image 16Jan
    by ADMINPLAY
    2012/01/16 by ADMINPLAY
    Views 16955 

    Apache Worker 방식의 이해 및 설정법

  19. Apache 로그레벨의 종류

  20. No Image 23Dec
    by ADMINPLAY
    2008/12/23 by ADMINPLAY
    Views 15428 

    Apache 버전확인

Board Pagination Prev 1 2 3 4 5 Next
/ 5

Copyright ADMINPLAY corp. All rights reserved.

abcXYZ, 세종대왕,1234

abcXYZ, 세종대왕,1234