>  기사  >  운영 및 유지보수  >  Apache에서 GZIP 압축을 활성화하는 방법

Apache에서 GZIP 압축을 활성화하는 방법

小云云
小云云원래의
2018-03-05 09:50:242045검색

Gzip은 현재 특히 Linux 플랫폼에서 널리 사용되는 인기 있는 파일 압축 알고리즘입니다. 최신 브라우저에서는 기본적으로 Gzip이 지원됩니다. 일반 텍스트 파일을 Gzip으로 압축하면 압축 후 네트워크를 통해 전송되는 바이트 수를 크게 줄일 수 있다는 장점이 있습니다. Gzip을 사용하면 웹페이지 로딩 속도가 빨라지고 웹사이트가 검색 엔진에 더 친숙해집니다. 아래에서 PHP 프로그래머 Lei Xuesong은 Apache가 mod_deflate 모듈을 사용하여 웹 콘텐츠의 Gzip 압축을 구현하는 방법을 자세히 설명합니다.

Apache 서버 HTTP 요청의 Gzip 처리 과정

1. Apache 서버는 브라우저로부터 HTTP 요청을 받은 후 브라우저가 HTTP 압축(Accept-Encoding 정보)을 지원하는지 확인합니다.

2. 브라우저가 HTTP 압축을 지원하는 경우 Apache 서버는 요청된 파일의 접미사를 확인합니다.

a. 요청한 파일이 HTML, CSS, JS, 이미지 등과 같은 정적 파일인 경우 Apache 서버는 요청한 파일의 최신 압축 파일이 이미 압축 버퍼 디렉터리에 있는지 확인합니다. 존재하지 않는 경우 요청한 압축 파일을 반환하고 압축합니다. 압축 파일이 이미 존재하는 경우 요청한 파일의 압축 파일을 직접 반환합니다.
b. 요청한 파일이 동적 파일인 경우 웹 서버는 콘텐츠를 동적으로 압축하여 브라우저에 반환합니다. 압축된 콘텐츠는 압축 캐시 디렉터리에 저장되지 않습니다.

Apache는 GZIP 압축 구성을 지원합니다.

1. http.conf 파일을 편집하고 mod_deflate 모듈을 활성화합니다.

앞에서 #LoadModule headers_module 모듈/mod_headers.so 주석을 제거합니다. #
#LoadModule deflate_module 모듈/mod_deflate를 제거합니다. so 댓글 #
Remove #LoadModule filter_module module/mod_filter.so 이전 댓글 #

2. Gzip 압축 관련 매개변수 구성


<IfModule mod_deflate.c>
#压缩率,6是建议值。
DeflateCompressionLevel 6
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/atom_xml
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE image/gif image/png image/jpe image/swf image/jpeg image/bmp
#排除不需要压缩的文件
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
SetEnvIfNoCase Request_URI .(?:html|htm)$ no-gzip dont-varySetEnvIfNoCase
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
</IfModule>

3. Apache 서버를 다시 시작하고 브라우저 요청을 사용하여 Gzip이 유효한지 확인합니다. P 관련 권장 사항: h PHP를 사용하여 서버가 GZIP 압축 기능을 지원하는지 확인합니다.

위 내용은 Apache에서 GZIP 압축을 활성화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.