테스트 사이트 - 개발 중인 베타 버전입니다

js와 같은 리소스의 캐쉬문제로 인한 업그레이드 안되는 문제 해결하기

· 2년 전 · 1413 · 4

모든 웹브라우저에서는 js파일과 같은 리소스가 일단 한번 다운로드 되면 로컬에 캐쉬로 저장하여 다음번 접속시에도 로컬의 것을 불러들입니다.

이 문제를 해결하자면 응답헤더부터 캐쉬관련 설정을 해두는것도 있지만 그러면 매번 그렇게 설정되어 있는것도 리소스를 효율적으로 이용하는 측면에서 불합리합니다.

그래서 저는 파일의 속성값 즉 파일이 마지막으로 수정된 날짜값과 파일크기를 가지고 이 문제를 해결하였습니다.

[code]

$time = filemtime($filename);
$size = filesize($filename);
echo "<script src='main.js?version=".$time.$size."'></script>";

[/code]
이렇게 하면 파일이 수정되었으면 URL이 달라져서 새로 다운로드하게 됩니다.

좋은 팁이 될까요?

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 4개

감사합니다.
2년 전
좋은 팁입니다.
@아가싱즈 감사합니다.

좋은 팁 공유해주셔서 감사합니다!

게시글 목록

번호 제목
24149
24140
24133
24125
24119
24109
24105
24101
24093
24089
24077
24074
24071
24070
24067
24056
24050
24046
24043
24040
24037
24036
24035
24034
24021
24017
24005
24002
23990
23980