작성자 PG의 글

웹서버에서 처리하는 파일의 종류는 크게 두가지입니다. PHP나 JSP, CGI와 같이 입력값 변수로 인해 결과물이 달라지는 동적 파일과 이미지, 음원, 비디오, 텍스트 문서등 파일 자체가 변하지 않는 정적 파일인데요.

동적 파일 같은 경우, 예를 들어 워드프레스에 캐시 설정을 하게 되면 댓글이나 새글을 포스트 했을때 그 페이지의 출력물이 변하게 되어 브라우저 캐시 설정을 하면 안되지만 이미지 같은 정적 파일 같은 경우 새로운 요청이 들어오면 서버에서 해당 파일을 응답, 전송 후 다시 같은 파일 요청이 들어오면 사용자 브라우저에서 캐시로 다운로드 받은 이미지를 뿌려줌으로써 웹서버의 속도와 동시에 트래픽을 절약할수 있는 방법입니다.

NGINX 정적 페이지,파일 브라우저 캐시 설정

location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
  expires 1M;
  access_log off;
  add_header Cache-Control "public";
}

location ~* \.(?:css|js)$ {
  expires 1y;
  access_log off;
  add_header Cache-Control "public";
}

위에서 언급했다시비 이미지, 음악파일등 정적 파일을 위와 같이 설정한 다음 expires에 브라우저 캐시될 기간을 지정합니다.

파일 확장자마다 브라우저 캐시 기간을 다르게 하고싶다면 location 항목을 하나 더 만들어 다르게 설정할수 있습니다.

location ~* \.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
  expires 1M;
  access_log off;
  add_header Cache-Control "public";

  proxy_pass backend;
}

location ~* \.(?:css|js)$ {
  expires 1y;
  access_log off;
  add_header Cache-Control "public";

  proxy_pass backend;
}

만일 리버스 프록시 환경에서 NGINX에 캐시 헤더를 넣고 싶다면 같은 요령으로 위와 같이 설정하면 되겠습니다.

expires에 대한 자세한 옵션 항목은 NGINX 문서를 참조하세요.

wp title 001
워드프레스 한국형 SNS 공유 플러그인 Korea SNS
워드프레스에서 포스팅한 글을 SNS에 공유하는 기능을 하는 플러그인을 검색해보면 상당히 많은 플러그인들이 검색됩니다. 기본적으로 워드프레스의 SNS 공유 플러그인은 페이스북, 트위터, 구글플러스를…
win10 taskbar color 05
윈도우10 작업표시줄 색상 변경하기
윈도우10의 작업표시줄 색은 기본적으로 배경화면에 맞게 시작 메뉴와 함께 자동으로 변경되는데요. 배경 화면과 별개로 사용자가 직접 색상을 지정해서 작업표시줄 색을…
win10 title green 00
윈도우10 체험지수 테스트하는 방법
윈도우7에서 간단하게 컴퓨터 성능을 테스트할수 있는 점수놀이로 애용했던 윈도우 체험지수가 윈도우10에서는 삭제되어 자신이 사용하는 컴퓨터의 성능을 테스트 하려면 벤치마크 프로그램을…
youtube title
유튜브 영상 하단에 워터마크 삽입하는 방법
동영상을 편집할때 자신의 아이콘이나 타이틀 로고등의 워터마크를 직접 넣을수도 있지만 동영상 렌더링 이후 나중에 변경하고 싶은 경우에는 워터마크를 교체하려면 동영상…