μ΄μ κΈμ ν΅ν΄ μΊμμ κΈ°λ³Έ κ°λ μ μ΄ν΄λ³΄μλ€. μλ΅μ λ°μ λ 'μΊμκ° μ ν¨ν μκ° κ°'μ λ°μλλ° λ§μ½ μΊμ μ ν¨ μκ°μ΄ μ΄κ³Όν κ²½μ°μλ μ΄λ»κ² λμμ ν΄μΌ ν κΉ?
λ λμκ°μ μλ²μ λ€μ μμ²μ νμ§λ§ λ°μ΄ν°κ° λ°λμ§ μμμ 'μΊμμ μλ μ ν¨ μκ°μ΄ μ§λ λ°μ΄ν°'μ κ°μ λ°μ΄ν°λΌλ©΄ κ΅³μ΄ λ λ€μ΄μ λ°μμμΌ ν κΉ?
μ΄λ¬ν μ μ 'κ²μ¦ ν΄λ'μ 'μ‘°κ±΄λΆ μμ² ν€λ'λΌλ κ²μ ν΅ν΄ λμ λ°©μμ μ΄ν΄ν΄ 보μ.
1. κ²μ¦ ν€λμ μ‘°κ±΄λΆ μμ² ν€λ π³
1. κ²μ¦ ν€λ
- μΊμ λ°μ΄ν°μ μλ² λ°μ΄ν°κ° κ°μμ§ κ²μ¦νλ λ°μ΄ν°
- Last-Modified, ETagλ₯Ό μ¬μ©
2. μ‘°κ±΄λΆ μμ² ν€λ
- κ²μ¦ ν€λλ‘ λ°μ 쑰건μ λ°λΌ λΆκΈ°κ° μκΈ°λ ν€λ
- If-Modified-SinceμΈ κ²½μ°, Last-Modified μ¬μ©
If-None-MatchμΈ κ²½μ°, ETag μ¬μ© - μ‘°κ±΄μ΄ λ§μ‘±νλ©΄(= λ°μ΄ν°κ° λ³κ²½λμμ κ²½μ°), 200 OK
μ‘°κ±΄μ΄ λ§μ‘±νμ§ μμΌλ©΄(= λ°μ΄ν°κ° λ³κ²½λμ§ μμμ κ²½μ°), 304 Not Modifed (HTTP λ°λ μμ΄ ν€λ λ©ν μ λ³΄λ§ μλ΅νλ€.)
2. Last-Modified & ETag π
1. Last-Modified
- λ°μ΄ν°λ₯Ό μμ ν λ μ§λ₯Ό μ μ₯νλ€.
2. ETag
- μΊμμ© λ°μ΄ν°μ μμμ κ³ μ ν λ²μ μ΄λ¦μ λ€λ κ²
- λ°μ΄ν°λ₯Ό μμ ν΄μ λ μ§λ λ€λ₯΄μ§λ§ λ°μ΄ν°μ λ΄μ©μ΄ κ°μ κ²½μ°μ μ¬μ© κ°λ₯ (Last-Modifiedλ₯Ό μ΄μ©νλ©΄ κΈ°μ‘΄μ λ°μ΄ν°μ λ€λ₯΄λ€κ³ μΈμ)
3. Last-Modified λμ λ°©μ π
- μλ²κ° λ°μ΄ν°λ₯Ό λ³΄λΌ λ Last-Modified μ 보λ₯Ό 보λΈλ€.
- μΊμ μ ν¨ μκ°μ΄ μ§λ λ€μ λ°μ΄ν°λ₯Ό μμ²ν κ²½μ° If-modified-since μ 보λ₯Ό ν¨κ» 보λΈλ€.
- μλ²μ μλ λ°μ΄ν°μ μ΅μ’ μμ μΌμ΄ If-modified-sinceμ κ°μ κ²½μ° HTTP Body μμ΄ 304 Not Modifiedλ₯Ό μ μ‘
- ν€λ λ°μ΄ν°λ₯Ό μ΄μ©νμ¬ λΈλΌμ°μ μ μλ λ°μ΄ν°λ₯Ό κ°±μ
- μΉλΈλΌμ°μ λ λΈλΌμ°μ μΊμμ μλ λ°μ΄ν°λ₯Ό μ¬μ¬μ©
4. ETag λμ λ°©μ π¬
- μλ²κ° λ°μ΄ν°λ₯Ό λ³΄λΌ λ ETag μ 보λ₯Ό 보λΈλ€.
- μΊμ μ ν¨ μκ°μ΄ μ§λ λ€μ λ°μ΄ν°λ₯Ό μμ²ν κ²½μ° If-None-Match μ 보λ₯Ό ν¨κ» 보λΈλ€.
- μλ²μ μλ λ°μ΄ν°μ ETagκ°μ΄ If-None-Matchμ κ°κ³Ό κ°μ κ²½μ° HTTP Body μμ΄ 304 Not Modifiedλ₯Ό μ μ‘
- ν€λ λ°μ΄ν°λ₯Ό μ΄μ©νμ¬ λΈλΌμ°μ μ μλ λ°μ΄ν°λ₯Ό κ°±μ
- μΉλΈλΌμ°μ λ λΈλΌμ°μ μΊμμ μλ λ°μ΄ν°λ₯Ό μ¬μ¬μ©
ν΄λΉ κΈμ
κΉμν λμ 'λͺ¨λ κ°λ°μλ₯Ό μν HTTP μΉ κΈ°λ³Έ μ§μ'
λ₯Ό μ°Έκ³ νμμ΅λλ€.
'π WEB' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
μΏ ν€μ 보μ λ¬Έμ (0) | 2023.04.29 |
---|---|
μΊμ(Cache) (0) | 2023.03.29 |
μΈμ (Session) (0) | 2023.03.28 |
μΏ ν€(Cookie) (0) | 2023.03.28 |