Tomcat 7.x 에서는 기본적으로 압축이 지원된다고 한다.
환경설정만 바꿔주면 된다.
1. /Tomcat/conf 이동후 server.xml 파일 오픈한다.
2. 내용검색으로 port="8080" 를 검색한다.
3. 아래 내용을 입력한다.
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata"
compressableMimeType="text/html,text/xml,text/plain,text/javascript,text/css,application/javascript"
즉 아래처럼 보일것이다.
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
compression="on"
compressionMinSize="2048"
noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/plain,text/html,text/xml,application/xhtml+xml,application/xml,application/rss+xml,text/css,application/javascript,application/x-javascript,audio/midi"/>
compressableMimeType="text/plain,text/html,text/xml,application/xhtml+xml,application/xml,application/rss+xml,text/css,application/javascript,application/x-javascript,audio/midi"/>
Connector 노드에
compression, compressionMinSize, noCompressionUserAgents, compressableMimeType 노드를 추가합니다.
compression : default "off"
압축전송기능 사용여부를 설정합니다. 당연히 이 기능을 쓰기위해선 on으로 설정해야합니다.
compressionMinSize : default "2048"
byte단위로 몇 이상 크기부터 압축할지를 결정합니다.
너무 작은 크기를 압축하면 오히려 서버의 자원낭비가 될 수 있습니다.
(물론 작은크기에서 압출률도 별로 의미가 없습니다.)
noCompressionUserAgents : default ""
압축을 사용하지 않을 유저에이전트(브라우저)를 설정합니다.
compressableMimeType : default ""
압축을 사용할 파일분류를 설정합니다.
추가로 IE 7(?) 포함한 이하버전과 넷스케이프 4(?)포함 이하버전은 gzip 전송하면 안된다.
noCompressionUserAgents 를 변경해야될지 몰르겠다.
// 옵션에 상세 설명은 여기가서 확인하면 된다.
http://tomcat.apache.org/tomcat-7.0-doc/config/http.html
※ 추가
ehcache lib를 이용한 zip 압축하기
http://pupustory.tistory.com/257
