nullvuild

Bloger @nullvuild

Created Date '2025/08/23 오후 11:22

Modified Date '2025/08/23 오후 11:22

#Django #CSS 캐시 방지 #웹 개발

왜 CSS 캐시가 문제일까?


Django 프로젝트에서 CSS 파일을 수정해도 브라우저가 이전 버전을 캐시하고 있어, 스타일이 제대로 적용되지 않는 경우가 자주 발생합니다. 이럴 때는 브라우저 캐시를 무효화할 방법이 필요합니다. 가장 간단한 방법 중 하나가 버전(Query Parameter) 방식을 활용하는 것입니다.



잘못된 코드 예시


처음에 많이 하는 실수가 아래와 같습니다.

<link rel="stylesheet" href="{% static 'css/custom_bootstrap.css?v=250823' %}">

겉보기에 맞는 것 같지만, Django의 {% static %} 태그는 정적 파일 경로만 처리합니다. ?v=250823 같은 쿼리스트링을 내부에 넣으면 Django가 해당 경로를 찾을 수 없어 에러가 발생합니다.



올바른 코드 예시


정상적으로 캐시를 회피하려면 쿼리스트링을 {% static %} 태그 바깥에 붙여야 합니다.

<link rel="stylesheet" href="{% static 'css/custom_bootstrap.css' %}?v=250823">

이렇게 하면 Django는 순수하게 custom_bootstrap.css 파일의 경로만 처리하고, 브라우저에는 ?v=250823가 붙어 전달됩니다. 브라우저는 새로운 URL로 인식하기 때문에 기존 캐시가 아닌 최신 CSS 파일을 불러오게 됩니다.

Nullvuild

Nullvuild

@nullvuild

프로필