위토즈 - 개발자프로그램판매공간

정보공유

[PHP] Minify 를 이용한 JavaScript, CSS 압축 전송

웹 서버의 페이지 크기가 크면 로딩 속도가 느리게 되는데 이때 PHP의 경우 압축전송 기술인 gzip 을 사용하게 됩니다.
PHP로 gzip을 사용하여 문서를 압축 하면 대략 70 ~ 80% 까지 압축률을 보여 주며 보통 PHP 상단에 아래와 같이 적어 사용합니다.
[code]
ob_start("ob_gzhandler");
[/code]


하지만 자바스크립트와 CSS 파일은 PHP 파일이 아니라서 ob_start 를 사용할 수가 없습니다.
자바스크립트나 CSS 같은 파일을 압축 전송하도록 해주는 Minify 를 소개 합니다.

우선 자신의 사이트의 압축률을 아래 사이트에 가서 확인해봅니다.

http://www.whatsmyip.org/http_compression/



Minify 는 PHP 5.2.1 이상 버전과 zlib 압축 라이브러리가 설치된 환경이어야 합니다.

다운로드 : http://code.google.com/p/minify/


위의 주소에서 파일을 다운받아서 압축을 풀고 그중에 min 폴더만 서버 루트에 업로드를 합니다.
업로드를 한후 루트에 cache 폴더를 생성한후 권한을 707 로 만들어 줍니다.


min 디렉토리에 있는 config.php 파일을 열어서 $min_cachepath 변수에 캐시 디렉토리를 정합니다.
[code]
//$min_cachePath = 'c:\\WINDOWS\\Temp';
//$min_cachePath = '/tmp';
//$min_cachePath = preg_replace('/^\\d+;/', '', session_save_path());
$min_cachePath = './cache';
[/code]

루트에 .htaccess 파일을 생성하고 (기존에 있으면 수정) js,css 파일을 자동 압축해주도록 합니다.
아래의 스크립트를 심어줍니다.

RewriteEngine On
RewriteRule ^(.*\.(css|js))$ ./min/index.php?f=$1 [L]

제대로 실행이 되는지 cache 폴더에 가서 파일이 생성되어있는것을 확인합니다.

아래 주소로 들어가서 변경된 결과를 확인할수있습니다.

http://www.whatsmyip.org/http_compression/
정보공유
Total 437건 4 페이지
번호 제목 글쓴이 날짜 조회
392 그누보드 최신글 그룹형 처리 방법. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-03 42837
391 결제 대행 PG사 모음. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-15 42809
390 페이스북 GRAPH API & IFRAME BASE FACEBOOK APPLICATION DEVELOPMENT 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11-03 42654
389 국외 해외 소셜 솔루션 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-10 42494
388 크롬 개발자도구의 다양한 기능. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-20 42248
387 jquery 심플 챠트 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-31 42198
386 무료 네트워크 트래픽 모니터링 툴. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 03-21 42133
385 VR 동영상 업로드 사이트 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-20 41932
384 KUTE.js 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 02-24 41894
383 페이스북 글 가져오기 (페이지) 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-05 41644
382 bash 관련 보안 취약점 중요 패치. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 09-26 41634
381 add_stylesheet 함수가 안먹힐경우 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-08 41514
열람중 Minify 를 이용한 JavaScript, CSS 압축 전송 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-09 41416
379 jquery 레이아웃 플러그인. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11-21 41388
378 짧은주소. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-22 41318