Apache HTTP Server

HTTP Server 웹 폰트 캐시설정

sscenic·2014년 2월 10일·조회 11,351

Apache 에서 mod_expires.so 모듈을 이용하여 정적 콘텐츠 중 웹 폰트(eot, ttf, woff)를 로컬 PC의 캐시에 저장하여

페이지 호출 시 속도 향상을 기대할 수 있음

설정 버전 : Apache 2.2.x 

설정 방법 :

1) mod_expires.so 파일을 /엔진Home Dir/modules 밑에 위치시킨 후 컴파일

2) httpd.conf 파일에 아래와 같이 설정

LoadMoudle expires_module modules/mod_expires.so <-- 모듈 등록

<IfModule mod_expires.c>

ExpiresActive on

AddType application/vnd.ms-fontobject .eot

AddType application/x-font-ttf .ttf

AddType application/x-font-woff .woff

## Web fonts

ExpiresByType application/font-woff  "access plus 1 week"  <-- 첫 접속 후 1주일 간 캐쉬로 저장

ExpiresByType application/x-font-ttf "access plus 2 days"

ExpiresByType application/vd.ms-fontobject "access plus 3 months"

<IfModule>

웹 폰트 이외에도 image, Javascript 등의 파일도 캐시로 설정 가능

댓글 2

로그인 후 댓글을 남길 수 있습니다.

  • appsrootappsroot· 2014년 2월 11일
    기회가 되면 mod_expires 에 대해서도 언급을 하려고 했었는데, 먼저 좋은 글을 올려주셨네요. 잘 읽었습니다. 부가적으로 조금 더 설명하자면, 예를 들어주신 "access plus 1 week" 에서 week, 즉 은 다음 것들이 추가로 준비되어 있습니다. * years * months * weeks * days * hours * minutes * seconds 그런데 혹시 위에서 months 는 정말 한달일까요? 1월은 31일, 2월은 28일(혹은 29일), 4월은 30일까지잖아요. 답은 아래 mod_expires.c 소스 일부를 참고하시기 바랍니다. else if (!strncasecmp(word, "months", 2)) { factor = 60 * 60 * 24 * 30; }
  • sscenic· 2014년 3월 10일
    아하.. 정확히는 한달이 아니라 30일이네요ㅎㅎ 감사합니다