s

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

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

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

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

[code]

$time = filemtime($filename);

$size = filesize($filename);

echo "<script src='main.js?version=".$time.$size."'></script>";

[/code]

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

좋은 팁이 될까요?

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

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
JavaScript 2년 전 조회 1,422
PHP 2년 전 조회 882
JavaScript 2년 전 조회 719
PHP 2년 전 조회 752
jQuery 2년 전 조회 801
JavaScript 2년 전 조회 724
기타 2년 전 조회 1,187
기타 2년 전 조회 893
PHP 2년 전 조회 1,229
JavaScript 2년 전 조회 2,012
JavaScript 2년 전 조회 889
JavaScript 2년 전 조회 1,072
JavaScript
[JavaScript]
2년 전 조회 749
PHP 2년 전 조회 877
PHP 2년 전 조회 901
JavaScript 2년 전 조회 914
2년 전 조회 1,426
2년 전 조회 1,634
2년 전 조회 1,349
2년 전 조회 1,831
2년 전 조회 1,799
2년 전 조회 1,511
2년 전 조회 1,817
2년 전 조회 1,236
2년 전 조회 1,905
JavaScript 2년 전 조회 1,707
2년 전 조회 1,499
2년 전 조회 1,419
2년 전 조회 1,532
기타 2년 전 조회 894
🐛 버그신고