🧺Cache-Control 헀더 생성기

μ§€μ‹œμž 쑰립과 λ‚‘μŒ μƒν•œ 계산

초
초
초

ν•¨κ»˜ 넣을 μ§€μ‹œμž

μΊμ‹œ μ’…λ₯˜μ‹ μ„  κΈ°κ°„λ§Œλ£Œ ν›„ λ™μž‘

μ§€μ‹œμž 이름과 λœ»μ€ HTTP Caching 규격(RFC 9111)κ³Ό stale-while-revalidate ν™•μž₯(RFC 5861)을 λ”°λ¦…λ‹ˆλ‹€(2026λ…„ 10μ›” 확인). 적정 μΊμ‹œ κΈ°κ°„μ—λŠ” 곡인된 ꢌμž₯값이 μ—†μ–΄ 초 값은 λͺ¨λ‘ μ‚¬μš©μž μž…λ ₯으둜 λ‘‘λ‹ˆλ‹€. μƒμ„±λœ ν—€λ”μ—λŠ” μ²œλ‹¨μœ„ κ΅¬λΆ„κΈ°ν˜Έλ₯Ό λ„£μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

κ΄€λ ¨λœ 도ꡬ

Cache-Control 헀더 생성기 μ‚¬μš©λ²•

λ²”μœ„μ™€ 초 값을 λ„£κ³  μ§€μ‹œμžλ₯Ό κ³ λ₯΄λ©΄ λΆ™μ—¬ μ“Έ 수 μžˆλŠ” Cache-Control ν•œ 쀄이 λ‚˜μ˜΅λ‹ˆλ‹€. 초 칸을 λΉ„μš°λ©΄ κ·Έ μ§€μ‹œμžλŠ” λ„£μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λΈŒλΌμš°μ €μ™€ 곡유 μΊμ‹œμ˜ μ‹ μ„  κΈ°κ°„, 낑은 응닡이 λ‚˜κ°ˆ 수 μžˆλŠ” μƒν•œ, μ§€μ‹œμžλΌλ¦¬ μΆ©λŒν•˜λŠ” 지점도 ν•¨κ»˜ 보여 μ€λ‹ˆλ‹€.

계산 방식과 κ·Όκ±°

μ§€μ‹œμž 이름과 μš°μ„ μˆœμœ„λŠ” HTTP Caching 규격(RFC 9111), stale-while-revalidate λŠ” RFC 5861 을 λ”°λžμŠ΅λ‹ˆλ‹€(2026λ…„ 10μ›” 확인). 낑은 응닡 λ…ΈμΆœ μƒν•œμ€ μ‹ μ„  기간에 stale-while-revalidate λ₯Ό λ”ν•œ 값이고, must-revalidate κ°€ 있으면 λ”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 적정 μΊμ‹œ κΈ°κ°„μ—λŠ” 곡인된 ꢌμž₯값이 μ—†μ–΄ 초 값은 μ „λΆ€ μž…λ ₯으둜 λ‘‘λ‹ˆλ‹€.

ν•œκ³„μ™€ μ£Όμ˜μ‚¬ν•­

ETagΒ·VaryΒ·Age 같은 λ‹€λ₯Έ ν—€λ”λ‚˜ CDN 별 ν™•μž₯ μ§€μ‹œμžλŠ” 닀루지 μ•ŠμŠ΅λ‹ˆλ‹€. 쑰건뢀 μš”μ²­ 흐름은 ETag μ „λž΅ μͺ½ 도ꡬ가 λ§‘μŠ΅λ‹ˆλ‹€. μƒμ„±λœ ν—€λ”μ—λŠ” μ²œλ‹¨μœ„ κ΅¬λΆ„κΈ°ν˜Έλ₯Ό λ„£μ§€ μ•ŠμœΌλ‹ˆ κ·ΈλŒ€λ‘œ λΆ™μ—¬ μ“°λ©΄ λ©λ‹ˆλ‹€.

자주 λ¬»λŠ” 질문

no-cache 와 no-store λŠ” 뭐가 λ‹€λ₯ΌκΉŒ?

no-cache λŠ” μ €μž₯은 ν—ˆμš©ν•˜κ³  μ“Έ λ•Œλ§ˆλ‹€ 원본에 κ²€μ¦ν•©λ‹ˆλ‹€. no-store λŠ” μ €μž₯ 자체λ₯Ό κΈˆμ§€ν•©λ‹ˆλ‹€. μΊμ‹œλ₯Ό 끄렀면 no-store μž…λ‹ˆλ‹€.

max-age 와 s-maxage λ₯Ό 같이 넣어도 될까?

λ©λ‹ˆλ‹€. 곡유 μΊμ‹œλŠ” s-maxage λ₯Ό, λΈŒλΌμš°μ €λŠ” max-age λ₯Ό λ΄…λ‹ˆλ‹€. CDN 만 길게 두고 λΈŒλΌμš°μ €λŠ” 짧게 λ‘˜ λ•Œ μ”λ‹ˆλ‹€.

immutable 은 μ™œ νš¨κ³Όκ°€ μ—†μ„κΉŒ?

μ‹ μ„  κΈ°κ°„ μ•ˆμ—μ„œλ§Œ μž¬κ²€μ¦μ„ λ§‰λŠ” μ§€μ‹œμžλΌ max-age κ°€ μ—†μœΌλ©΄ 적용될 ꡬ간이 μ—†μŠ΅λ‹ˆλ‹€. ν•΄μ‹œ 파일λͺ…κ³Ό ν•¨κ»˜ μ“°λŠ” μ„€μ •μž…λ‹ˆλ‹€.