about Web

헤더 만료기한(image cache)

끄적끄적 2008. 6. 25. 13:47


사용자 삽입 이미지

요즘 웹사이트 최적화 기법 이라는 책을 보고 있다.

얼마전 Daum UI DevDay 에서 들은 내용이나 서평등을 보니 Daum에서 2008년 리뉴얼을 하면서 책 내용을 많이 참고한거 같다.

책 내용들이 적용하면 좋을 내용들이 많은데, 오늘은 "규칙3: 헤더에 만료기한을 추가하라"라는 부분을 보고 테스트해보고 있다.

현재 서비스 하고 있는 url들에 대해 firefox의 firebug의 Net탭으로 다운내역들을 확인해 보았다. 아니 그런데, 한번 받은 이미지에 대해 페이지 리로드시 304로 요청처리가 되어야 할 내용들이 요청이 없는 것이 아닌가..

음 리뉴얼할때, Expire내용을 추가한건가 해서 response 헤더도 찍어봤는데, 분명 이미지들에 대해 Expire나 max-age 속성이 없었다.
이상해서 동일 페이지에 대해 IE7에서 IBM Page Detailer로 찍어보니 역시나 IE에서는 페이지 리로드시 이미지들이 모두 304로 확인처리가 되고 있었다.

그럼, Firefox에서는 왜 304로 확인처리가 되지않고, 그냥 캐쉬에 있는 이미지가 나온 것일까?
이유는 IE의 경우 저장된 페이지에 대해 "페이지를 열때마다" 새버전을 확인하도록 설정해 놓았으나, Firefox는 "자동확인"으로 되어있었던 것이다.

Firefox에서 about:config 로 들어가서 browser.cache.check_doc_frequency 값을 1로 바꾸고 다시 테스트하니 Firefox에서도 이미지들에 대해 304로 모두 확인을 하고 있다.

팀원들에게 전파해서, 적어도 이미지는 얼릉 Expire처리를 할 수 있도록 해야되겠다..

------------------------------------------------------------------------------
참고로 Firefox의 browser.cache.check_doc_frequency 값의 의미

0: 현 브라우저 세션이 끝날때까지 한번만 체크 (파폭을 종료하기 전까지는 되도록 cache에서만 읽음)
1: 페이지에 들를때 마다 매번 체크
2: 체크하지 않음. (한번 cache되고 나면 늘 cache를 씀)
3 (기본 설정): 자동으로 주기적으로 체크
참고: http://forums.mozilla.or.kr/viewtopic.php?f=2&t=9530&p=33966&hilit=cache#p33966
반응형