반응형
내 자바스크립트 파일의 캐싱을 방지하는 방법은?
간단한 html이 있습니다.
<html>
<body>
<head>
<meta charset="utf-8">
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
<script src="test.js"></script>
</body>
</html>
test.js에서 자바스크립트 함수를 변경했는데 브라우저에서 이 파일을 캐싱하고 있습니다.스크립트 src의 캐시를 비활성화하는 방법?
임의 쿼리 문자열을 에 추가합니다.src
변경할 때마다 쿼리 문자열을 증가시켜 수동으로 이 작업을 수행할 수 있습니다.
<script src="test.js?version=1"></script>
또는 서버 사이드 언어를 사용하는 경우 자동으로 다음을 생성할 수 있습니다.
ASP.NET:
<script src="test.js?rndstr=<%= getRandomStr() %>"></script>
캐시 버스팅에 대한 자세한 정보는 여기에서 확인할 수 있습니다.
https://www. curtiscode.dev/post/front-end-dev/what-is-cache- bust
<script src="test.js?random=<?php echo uniqid(); ?>"></script>
편집: 또는 파일 수정 시간을 사용하여 클라이언트에 캐시되도록 할 수도 있습니다.
<script src="test.js?random=<?php echo filemtime('test.js'); ?>"></script>
스크립트에 대한 캐싱 제어 HTTP 헤더를 보내도록 웹 서버를 구성합니다.
HTML 문서의 가짜 머리글:
- 실제 HTTP 헤더만큼 잘 지원되지 않음
- HTML 문서에 적용, 연결되는 리소스에 적용하지 않습니다.
queryString을 src에 추가하고 업데이트 버전을 릴리스할 때만 변경할 수 있습니다.
<script src="test.js?v=1"></script>
이런 식으로 브라우저는 새 버전이 지정될 때까지 캐시된 버전을 사용합니다(v=2, v=3...).
스크립트를 가리키는 URL에 임의(또는 날짜 시간 문자열)를 쿼리 문자열로 추가할 수 있습니다.이와 같습니다.
<script type="text/javascript" src="test.js?q=123"></script>
페이지를 새로 고칠 때마다 'q' 값이 변경되는지 확인해야 합니다.
언급URL : https://stackoverflow.com/questions/7413234/how-to-prevent-caching-of-my-javascript-file
반응형
'source' 카테고리의 다른 글
단일 항목이 있는 배열로 변환 (0) | 2023.10.24 |
---|---|
AngularJS $http 오류 함수가 호출되지 않았습니다. (0) | 2023.10.24 |
Larravel 5에서 Expellent를 사용하여 피벗 테이블을 업데이트하는 방법 (0) | 2023.10.24 |
워드프레스에 모더니즈를 제대로 추가하는 것? (0) | 2023.10.24 |
PHP + Wordpress - 디렉토리에서 파일 목록 가져오기 (0) | 2023.10.24 |