컴퓨터 / Computer

아파치 웹 서버에서 압축 전송하기

feather.png 



일전에 썼던 글(https://www.7-star.net/bbs/board.php?bo_table=talk_computer&wr_id=776)에서 보완할 사항이 많아서 새 글로 등록을 함.


기본적으로는 아파치의 mod_deflate 를 이용하여 압축 전송하는데, 설정에 차이가 있다.


httpd.conf 에 아래 항목을 추가한다. 


 <Location />

# 필터를 추가한다

SetOutputFilter DEFLATE


# Netscape 4.x에 문제가 있다...

BrowserMatch ^Mozilla/4 gzip-only-text/html


# Netscape 4.06-4.08에 더 문제가 있다

BrowserMatch ^Mozilla/4\.0[678] no-gzip


# MSIE은 Netscape라고 자신을 알리지만, 문제가 없다

# BrowserMatch \bMSIE !no-gzip !gzip-only-text/html


# 주의: 아파치 2.0.48까지 mod_setenvif의 버그때문에

# 위의 정규표현식은 동작하지 않는다. 원하는 효과를

# 얻기위해 다음과 같이 수정하여 사용한다:

BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html


# 이미지를 압축하지 않는다

SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|bmp|zip|gz|rar|7z)$ no-gzip dont-vary


# 프록시가 잘못된 내용을 전달하지않도록 한다

Header append Vary User-Agent env=!dont-vary

</Location>


혹자는 위 내용 대신에 아래 내용을 넣으면 된다고 한다. 


 <IfModule mod_deflate.c>


AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript

DeflateCompressionLevel 9

BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.xx에는 HTML만 압축해서 보냄
BrowserMatch ^Mozilla/4\.0[678] no-gzip # Netscape 4.06~4.08에는 압축해서 보내지 않음
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # 자신을 Mozilla로 알리는 MSIE에는 그대로 압축해서 보냄

##예외 설정
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png|bmp|zip|gz|rar|7z)$ no-gzip dont-vary

####로그설정.
##DeflateFilterNote Input instream
##DeflateFilterNote Output outstream
##DeflateFilterNote Ratio ratio
##
##LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate
##CustomLog logs/deflate_log deflate 
</IfModule>



위 항목을 제대로 쓸려면 아래 Module 을 활성화해야 한다.


LoadModule deflate_module modules/mod_deflate.so

LoadModule headers_module modules/mod_headers.so

LoadModule filter_module modules/mod_filter.so



아파치를 다시 시작한 후에 아래 사이트에서 확인해 보면 된다.



http://www.whatsmyip.org/http-compression-test/






관련 링크 

 - https://httpd.apache.org/docs/2.4/ko/mod/mod_deflate.html

 -  https://www.playnexacro.com/#show:techtip:182 

 - https://www.7-star.net/bbs/board.php?bo_table=talk_computer&wr_id=905

 - https://www.7-star.net/bbs/board.php?bo_table=talk_computer&wr_id=776

Comments

실크처럼 부드럽고 촉촉한 보습 케어 바디클렌져 750g
남자 여자 데일리 심플 다기능 포켓 서류가방 토트백
햇빛차단 스카프 마스크 ELS-088
빌리버스 남성 가죽 샌들 소가죽 슬리퍼 캐주얼 신발 BPO150
UTP 랜 케이블 1m 네트워크연결 인터넷랜선 랜선 네트워크구축 랜선연장
소니 NP-BX1 호환 LCD 듀얼 충전기 C타입5핀겸용
자광 콧털제거기 6512-고급코털깍기/코털정리기
갤럭시탭S9/S8/S7 전용 스타일러스 컬러볼펜 실리콘 펜슬 케이스
무타공 면도기 스텐 거치대 걸이
철제 더블 옷장 무타공 튼튼한 스탠드 옷걸이 행거
화장품 수납정리대 파우더룸 메이크업 브러쉬
철제 스탠드 옷걸이 행거 2단 높은 DIY 인테리어 헹거
디디샵 그린 실리콘 도마 - 소
농심 튀김우동 컵라면 소컵 62gx6개
농심 새우탕 컵라면 소컵 67g6개
송원 우리차 민들레차 80T (40Tx2개)

피에르가르뎅)리브라 만년필(PC3400FP 블루)
칠성상회
연습전용 펜돌리기 스피닝 젤리펜
칠성상회

맨위로↑