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

정보공유

[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 74건 1 페이지
번호 제목 글쓴이 날짜 조회
74 PHPExcelReader 사용할때 php number_format 사용하지 않고 숫자형 처리 하는 법 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-26 50288
73 카텍좌표값 을 WGS84로 변환하기. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 07-11 48998
72 2차 도메인 뽑아내기. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-05 45981
71 네이밍, 코딩룰 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10-24 45398
70 방문자의 접속국가 처리. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 02-23 45380
69 [정규식] 텍스트내용에서 이미지 태그의 경로만 변환처리하기. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 10-29 43874
68 해외 CMS 솔루션 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 02-10 43625
열람중 Minify 를 이용한 JavaScript, CSS 압축 전송 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 01-09 41231
66 mysql 테이블 필드(컬럼) 존재 여부 확인. 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 02-27 37626
65 PHP 코드최적화 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-20 37068
64 PHP 로 HTTP raw post data 를 처리하는 방법 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-18 37013
63 php 를 asp 로 db연결방법 파일업로드 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 12-07 35961
62 d-day 계산, 디데이 계산 함수 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 04-06 35793
61 cURL을 이용한 웹페이지 가져오기 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 11-20 35417
60 1차 도메인정보만 추출하기 최고관리자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 08-31 34444