ν΄... μ¬μ€ κ³΅λΆ μ§μ§λ¦¬λ μ ν΄μ λ¨μ΄μ§κΉ κ±±μ νμλλ° μ΄κ² μ¬κ±Έ... λ¬΄λ € νκ· 71μ μΌλ‘ ν©κ²©νμ΅λλ€.
μΌλ¨ μ²μ CBTλ‘ λ°λ κ±°λΌ κ·Έλ°μ§, μλλ©΄ μ μλ¦¬κ° κ°κΏ μ리μλ 건μ§...(μλ§ μ΄κ² λ§κ² μ§μ...) λΉκ΅μ μ¬μ΄ λ¬Έμ λ€μ΄ λ§μ΄ λμ μμ ν μ μμμ΅λλ€. μ΅μ€.
κ·Όλ° μνν νμν μ€ μκ³ μΆλ ₯ν΄κ°λλ° μννλ κ²μ¬ μ νκ³ μ λΆμ¦λ§ κ²μ¬νλλΌκ΅¬μ...? μλ κ·Έλ° κ±΄κ°? μλ¬΄νΌ 4, 5κ³Όλͺ©μ μ μΌ κ±±μ νμλλ° 4κ³Όλͺ©μ 90μ μ΄λ λ§μλ€λ€μ γ γ γ μλνκ³ μΆμμ.
5κ³Όλͺ©μ 50μ μ΄λΌλ μ²μ°Έν κ²°κ³Όμμ§λ§. μ΄μ¨λ .
1, 2, 3κ³Όλͺ©μ 70μ λμμ΄μ. μμ κ°λΉ»μ μ μ λμ¬ μ€ μμλλ° μκ°λ³΄λ€ λ무 μ λ΄μ λλ¬λ΅λλ€. μ΄λλκ³ μ€λ₯ λ¬λ€κ³ λμ€μ λΆν©κ²© μ£Όλ 건 μλκ² μ£ ?
22λ 1ν, 2ν λ¬Έμ λ€μ΄ κ½€ λ§μ΄ λμ€κ³ μ κ° νμλ κΈ°μΆ μ€μμ κ²ΉμΉλ κ²λ λ§μ΄ λμμ΅λλ€. κ·Όλ° μ΄λ λμλ λ¬Έμ μλμ§ κΈ°μ΅μ΄ μ λ¨... μ κ° λ³Έ 건 22λ 1, 2ν νκΈ° λ¬Έμ λ€μ΄λ μμ λΉ μΉ΄νμ μ¬λΌμ¨ λ¬Έμ λ€μ΄μμΌλ... μλ§ κ±°κΈ°μ λΉμ·νκ² λμκ² μ£ ...
κ·Όλ°!!! μ§μ§ ν보νκ³ μΆμ 건!!! μ νλΈμ ν₯λ¬μ€μ΄λΌκ³ μ§μ§ μ‘±μ§κ² κ°μ¬λ κ³μ μ. λ²Όλ½μΉκΈ°λ‘ κ·Έ λΆ κ°μ λ£κ³ μ λ ¬μ΄λ νμ νκΈ°λ²μ΄λ νμ΄μ§ κ΅μ²΄λ κ·Έλ° κ±° λ€ μ μ μμμ΅λλ€. κΌ λ€μΌμΈμ. μ € 보면μ ν₯λ¬μ€μ΄ κ°λ₯΄μ³μ€¬λ κ² λ§μ΄ λμμ μμΌλ‘ μ€μ λ§μ΄ λΆλ₯΄μ§μλ΅λλ€... ν₯λ¬μ€... μ΅κ³ ... 짱! λ°λ‘ ꡬλ λ€μ΄κ°λλ€.
μΉμ 7. HTTP ν€λ1 - μΌλ° ν€λ μκ° μλ£!!
header-field = field-name":" OWS field-value OWS (OWS: λμ΄μ°κΈ° νμ©)
β‘οΈ Host: www.google.com
HTTP ν€λλ HTTP μ μ‘μ νμν λͺ¨λ λΆκ°μ 보λ₯Ό λ΄κ³ μλ€.
(μ: λ©μμ§ λ°λμ λ΄μ©, λ©μμ§ λ°λμ ν¬κΈ°, μμΆ, μΈμ¦, μΊμ κ΄λ¦¬ μ 보 λ±)
HTTP λ°λ
λ©μμ§ λ³Έλ¬Έ(message body)μ ν΅ν΄ νν(μ λ¬ν μ€μ λ°μ΄ν°) λ°μ΄ν° μ λ¬.
νν ν€λλ νν λ°μ΄ν°λ₯Ό ν΄μν μ μλ μ 보 μ 곡. (λ°μ΄ν° μ ν, λ°μ΄ν° κΈΈμ΄, μμΆ μ 보 λ±)
νμ ν€λλ μμ² μμλ§ μ¬μ©νλ€.
Host: μμ²ν νΈμ€νΈ μ 보 (λλ©μΈ)
Location: νμ΄μ§ 리λ€μ΄λ μ
Allow: νμ© κ°λ₯ν HTTP λ©μλ
Retry-After: μ μ μμ΄μ νΈκ° λ€μ μμ²μ νκΈ°κΉμ§ κΈ°λ€λ €μΌ νλ μκ°
HTTPλ 무μν νλ‘ν μ½μ΄κΈ° λλ¬Έμ ν΄λΌμ΄μΈνΈμ μλ²κ° μμ²κ³Ό μλ΅μ μ£Όκ³ λ°μΌλ©΄ μ°κ²°μ΄ λμ΄μ§λ€. μ¦, ν΄λΌμ΄μΈνΈκ° λ€μ μμ²νλ©΄ μλ²λ μ΄μ μμ²μ κΈ°μ΅νμ§ λͺ»νλ€. κ·Έλμ μΏ ν€λ₯Ό μ¬μ©νλ€.
μΉμ 8. HTTP ν€λ2 - μΊμμ μ‘°κ±΄λΆ μμ² μκ° μλ£!!
μΊμκ° μμ λ
μΊμ μ μ© μ
첫 λ²μ§Έ μμ² μ μλ΅ κ²°κ³Όλ₯Ό μΊμμ μ μ₯νκ³ , λ λ²μ§Έ μμ² μ μΊμμμ μ‘°νν΄ κ°μ Έμ¨λ€. β‘οΈ μΊμ κ°λ₯ μκ°λμ λ€νΈμν¬λ₯Ό μ¬μ©νμ§ μμλ λλ©°, λΈλΌμ°μ λ‘λ© μλκ° λΉ¨λΌμ§λ€.
μΊμμ μ ν¨ μκ°μ΄ μ΄κ³Όλλ©΄ μλ²λ₯Ό ν΅ν΄ λ°μ΄ν°λ₯Ό λ€μ μ‘°ννκ³ μΊμλ₯Ό κ°±μ νλ€.
μΊμ λ§λ£ νμλ μλ²μμ λ°μ΄ν°λ₯Ό λ³κ²½νμ§ μμΌλ©΄ μ μ₯ν΄λμλ μΊμλ₯Ό μ¬μ¬μ© ν μ μλ€. νμ§λ§ ν΄λΌμ΄μΈνΈμ λ°μ΄ν°μ μλ²μ λ°μ΄ν°κ° κ°λ€λ μ¬μ€μ νμΈν΄μΌ νλ€.
β‘οΈ κ²μ¦ ν€λ(λ°μ΄ν°κ° λ§μ§λ§μ μμ λ μκ°)λ₯Ό μΆκ°ν΄μ νμΈνλ€.
ν΄λΌμ΄μΈνΈμ μλ²μ λ°μ΄ν° μ΅μ’
μμ μΌμ΄ κ°μΌλ©΄ κ·Έ λ°μ΄ν°λ λ³κ²½λμ§ μμ κ². μ΄ λ μλ²λ ν΄λΌμ΄μΈνΈμκ² HTTP λ°λλ λΉΌκ³ ν€λλ§ λ³΄λΈλ€. (304 Not Modified)
ν΄λΌμ΄μΈνΈλ μλ²κ° λ³΄λΈ μλ΅ ν€λ μ λ³΄λ‘ μΊμμ λ©ν μ 보λ₯Ό κ°±μ νλ€.
If-Modified-Since: μ΄νμ λ°μ΄ν°κ° μμ λμμΌλ©΄?
ETag(Entity Tag)
μΊμμ© λ°μ΄ν°μ μμμ κ³ μ ν λ²μ μ΄λ¦μ λ¬μλλ€. (μ: ETag: "v1.0")
λ°μ΄ν°κ° λ³κ²½λλ©΄ μ΄λ¦μ λ³κ²½νλ€. (Hashλ₯Ό λ€μ μμ±νλ€.)
β‘οΈ ETagκ° κ°μΌλ©΄ λ°μ΄ν°κ° μμ λμ§ μμ κ²!
Cache-Control: max-age
μΊμ μ ν¨ μκ°, μ΄ λ¨μ.
Cache-Control: no-cache
λ°μ΄ν°λ μΊμν΄λ λμ§λ§, νμ original μλ²μ κ²μ¦νκ³ μ¬μ©ν΄μΌ νλ€.
Cache-Control: no-store
λ°μ΄ν°μ λ―Όκ°ν μ λ³΄κ° μμΌλ―λ‘ μ μ₯νλ©΄ μ λλ€.
Cache-Control: must-revalidate
μΊμ λ§λ£ ν μ‘°ν μ original μλ²μ κ²μ¦ν΄μΌ νλ€.
original μλ²μ μ κ·Ό μ€ν¨ μ λ°λμ μ€λ₯κ° λ°μν΄μΌ νλ€. (504 Gateway Timeout)
μΊμ μ ν¨ μκ°μ΄λΌλ©΄ μΊμλ₯Ό μ¬μ©νλ€.
μΉμ 9. λ€μμΌλ‘ μκ° μλ£!!
μκ°!! λ!!
+) 22. 07. 20. λλμ΄ μ 리 μλ£!
λ무 κΈΈμ΄μ λ§ν¬λ‘ λ체ν©λλ€. (κ°μ΄μ¬ν μ 리νμ΄μ. κ΅μ°© μνμ λν λ΄μ©μ΄ μμ£Ό μμΈν μ 리λμ΄ μμΌλ νμνμ λΆλ€μ μ μ½μ΄μ£ΌμΈμ.)