docs: nginx SPA index.html 캐시 방지 원칙 추가

- 313_프론트_구조_원칙.md: "12. 프론트엔드 캐싱 전략"에 Vite SPA 배포 시 index.html 캐시 방지 필수 명시
This commit is contained in:
happybell80 2026-01-21 15:43:28 +09:00
parent bdad87e092
commit de94d0bcd2

View File

@ -202,11 +202,17 @@ src/
## 12. 프론트엔드 캐싱 전략 ## 12. 프론트엔드 캐싱 전략
### 버전 파라미터 필수 ### 버전 파라미터 필수 (수동 빌드 시)
- JS/CSS 파일: `?v=YYYYMMDD` 추가 (예: `app.js?v=20251204`) - JS/CSS 파일: `?v=YYYYMMDD` 추가 (예: `app.js?v=20251204`)
- 배포 후 버전 번호 업데이트 필수 - 배포 후 버전 번호 업데이트 필수
### nginx 캐시 제어 ### nginx SPA index.html 캐시 방지 (Vite 빌드 시 필수)
- Vite는 JS/CSS에 해시 파일명 자동 생성 (예: `index-D3r66P5F.js`)
- **index.html만 캐시 방지 필수**: `Cache-Control: no-store, no-cache, must-revalidate`
- index.html이 캐시되면 이전 해시 파일명 참조 → 배포 후 변경사항 미반영
- nginx 설정 예시: `location = /goosefarm/index.html` 블록에 `add_header Cache-Control` 추가
### nginx 캐시 제어 (일반)
- ETag 사용 시 Ctrl+F5로도 캐시 회피 어려움 - ETag 사용 시 Ctrl+F5로도 캐시 회피 어려움
- 버전 파라미터가 가장 확실한 방법 - 버전 파라미터가 가장 확실한 방법