๐ฒย HTTP๋?
HTTP๋ Hyper Text Transfer Protocol์ ์ฝ์๋ก ์๋ฒ/ํด๋ผ์ด์ธํธ ๋ชจ๋ธ์ ๋ฐ๋ผ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๊ธฐ ์ํ ํ๋กํ ์ฝ์ด๋ค.
- ์ธํฐ๋ท์์ ํ์ดํผํ
์คํธ๋ฅผ ๊ตํํ๊ธฐ ์ํ ํต์ ๊ท์ฝ
- 1989๋
ํ ๋ฒ๋์ค ๋ฆฌ์ ์ํด ์ฒ์ ์ค๊ณ, WWW(World Wide Web) ๊ธฐ๋ฐ์์ ์ธ๊ณ์ ์ธ ์ ๋ณด๋ฅผ ๊ณต์ ํ๋ ๋ฐ ํฐ ์ญํ ์ ํจ
- HTTP ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ํต์ ์ ์ํํ๋ฉด, ํํ์ด์ง URL์ด โhttp:// '๋ก ์์ํจ.
- 80๋ฒ ํฌํธ ์ด์ฉ
์ฆ, ๊ฐ๋จํ ๋งํ๋ฉด HTTP ํ๋กํ ์ฝ์ ๋คํธ์ํฌ ํต์ ์ ์๋ํ๊ฒ ํ๋ ๊ธฐ๋ณธ ๊ธฐ์ ์ด๋ค.
๐งฉ ย ๊ตฌ์กฐ
HTTP๋ ์ ํ๋ฆฌ์ผ์ด์
๋ ๋ฒจ์ ํ๋กํ ์ฝ๋ก TCP/IP ์์์ ์๋ํ๋ค. HTTP๋ ์ํ๋ฅผ ๊ฐ์ง๊ณ ์์ง ์์ Stateless ํ๋กํ ์ฝ์ด๋ฉฐ HTTP ๋์ ๊ณผ์ ์์ ํ์ํ HTTP request์ response ๋ฉ์์ง๋ ํฌ๊ฒ 3๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ๋๋ค.
โ๏ธ Stateless
state(์ํ)๋ฅผ ์ ์ฅํ์ง ์์. ์ฆ, ์์ฒญ์ด ์ค๋ฉด ๊ทธ์ ์๋ตํ ๋ฟ, ์ฌ๋ฌ ์์ฒญ/์๋ต์ด ์ฐ๊ฒฐ๋์ด ์์ง ์๋ค๋ ๋ป์.
HTTP request ๊ตฌ์กฐ
(์ถ์ฒ : https://hahahoho5915.tistory.com/62)
๐ ย Start Line
- HTTP Request Message์ ์์ ๋ผ์ธ
- 3๊ฐ์ง๋ก ๊ตฌ์ฑ
- HTTP Method
- ์์ฒญ์ ์๋๋ฅผ ๋ด๊ณ ์๋ ๋ฉ์๋
- HTTP Methods์๋ GET, POST, PUT, DELETE, OPTIONS ๋ฑ๋ฑ์ด ์๋ค. โ ์ฃผ๋ก GET๊ณผ POST๊ฐ ์ฐ์.
- Request target
- ํด๋น request๊ฐ ์ ์ก๋๋ ๋ชฉํ URI
- ์๋ฅผ ๋ค์ด /login.
- HTTP Version
GET /background.png HTTP/1.0
ย POST / HTTP 1.1
๐ ย Headers
- ํด๋น request์ ๋ํ ์ถ๊ฐ ์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ ๋ถ๋ถ
- Key:Value ๊ฐ์ผ๋ก ๊ตฌ์ฑ
- ์์) HOST: google.com => Key = HOST, Value = google.com
- Headers๋ ํฌ๊ฒ 3๋ถ๋ถ์ผ๋ก ๊ตฌ์ฑ๋จ(general headers / request headers / entity headers)
- ์์ฃผ ์ฌ์ฉ๋๋ header ์ ๋ณด
- Host
: ์์ฒญ์ด ์ ์ก๋๋ target์ host url: ์๋ฅผ ๋ค์ด, google.com
- User-Agent
: ์์ฒญ์ ๋ณด๋ด๋ ํด๋ผ์ด์ธํธ์ ๋ํ ์ ๋ณด: ์๋ฅผ ๋ค์ด, ์น๋ธ๋ผ์ฐ์ ์ ๋ํ ์ ๋ณด.
- Accept
: ํด๋น ์์ฒญ์ด ๋ฐ์ ์ ์๋ ์๋ต(response) ํ์
.
- Connection
: ํด๋น ์์ฒญ์ด ๋๋ ํ์ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ๊ณ์ํด์ ๋คํธ์ํฌ ์ปจ๋ฅ์
์ ์ ์ง ํ ๊ฒ์ธ์ง ์๋๋ฉด ๋์ ๊ฒ์ธ์ง์ ๋ํด ์ง์ํ๋ ๋ถ๋ถ.
- Content-Type
: ํด๋น ์์ฒญ์ด ๋ณด๋ด๋ ๋ฉ์์ง body์ ํ์
. ์๋ฅผ ๋ค์ด, JSON์ ๋ณด๋ด๋ฉด application/json.
- Content-Length
: ๋ฉ์ธ์ง body์ ๊ธธ์ด.
๐ ย Blank Line
- ์์ฒญ์ ๋ํ ๋ชจ๋ ๋ฉํ ์ ๋ณด๊ฐ ์ ์ก๋์์์ ์๋ฆฌ๋ ์ฉ๋
๐ ย Body
- HTTP ์์ฒญ์ด ์ ์กํ๋ ๋ฐ์ดํฐ๋ฅผ ๋ด๊ณ ์๋ ๋ถ๋ถ
- ๋ฐ์ดํฐ ์
๋ฐ์ดํธ ์์ฒญ๊ณผ ๊ด๋ จ๋ ๋ด์ฉ
- POST ์์ฒญ์ผ ๊ฒฝ์ฐ, ๋ณดํต HTML ํผ ๋ฐ์ดํฐ๊ฐ ํฌํจ
- ์ ์กํ๋ ๋ฐ์ดํฐ๊ฐ ์๋ค๋ฉด body๋ ๋น์ด์์.
โ GET, HEAD, DELETE, OPTIONS์ฒ๋ผ ๋ฆฌ์์ค๋ฅผ ๊ฐ์ ธ์ค๋ ์์ฒญ์ ๋ฐ๋ ๋ฏธํฌํจ
(์ถ์ฒ : https://mangkyu.tistory.com/98)
์์ฒญ๋ฉ์๋
์๋ฒ์๊ฒ ์์ฒญ์ ์ข
๋ฅ๋ฅผ ์๋ ค์ฃผ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
- GETย : ์ ๋ณด๋ฅผ ์์ฒญํ๊ธฐ ์ํด ์ฌ์ฉ(SELECT)
- POST : ์ ๋ณด๋ฅผ ๋ฐ์ด ๋ฃ๊ธฐ ์ํด ์ฌ์ฉ(INSERT)
- PUT : ์ ๋ณด๋ฅผ ์
๋ฐ์ดํธํ๊ธฐ ์ํด์ ์ฌ์ฉ(UPDATE)
- DELETE : ์ ๋ณด๋ฅผ ์ญ์ ํ๊ธฐ ์ํด์ ์ฌ์ฉ(DELETE)
- HEAD : (HTTP) ํค๋ ์ ๋ณด๋ง ์์ฒญ. ํด๋น ์์์ด ์กด์ฌํ๋์ง ํน์ ์๋ฒ์ ๋ฌธ์ ๊ฐ ์๋์ง๋ฅผ ํ์ธํ๊ธฐ ์ํด ์ฌ์ฉ.
- OPTIONS : ์น ์๋ฒ๊ฐ ์ง์ํ๋ ๋ฉ์๋์ ์ข
๋ฅ๋ฅผ ์์ฒญ.
- TRACE : ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๊ทธ๋๋ก ๋ฐํ. ์ฃผ๋ก echo ์๋น์ค๋ก ์๋ฒ ์ํ๋ฅผ ํ์ธํ๊ธฐย ์ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ.
HTTP response ๊ตฌ์กฐ
(์ถ์ฒ : https://hahahoho5915.tistory.com/62)
๐ ย Status Line
- HTTP Response์ ์ํ๋ฅผ ๊ฐ๋ตํ๊ฒ ๋ํ๋ด์ฃผ๋ ๋ถ๋ถ
- 3๊ฐ์ง๋ก ๊ตฌ์ฑ
- HTTP version
- Status Code : ์๋ต ์ํ๋ฅผ ๋ํ๋ด๋ ์ฝ๋
- Status Text : ์๋ต ์ํ๋ฅผ ๊ฐ๋ตํ๊ฒ ์ค๋ช
๐ ย Headers
- Request์ header์ ๋์ผ
- ๋ค๋ง response์์๋ง ์ฌ์ฉ๋๋ header ๊ฐ๋ค์ด ์์
- ์๋ฅผ ๋ค์ด, User-Agent ๋์ ์ Server ํค๋๋ฅผ ์ฌ์ฉ
๐ ย Blank Line
- ์์ฒญ์ ๋ํ ๋ชจ๋ ๋ฉํ ์ ๋ณด๊ฐ ์ ์ก๋์์์ ์๋ฆฌ๋ ์ฉ๋
๐ ย Body
- ์๋ต ๋ฆฌ์์ค ๋ฐ์ดํฐ
- Request์ body์ ์ผ๋ฐ์ ์ผ๋ก ๋์ผ
- Request์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ชจ๋ response๊ฐ body๊ฐ ์์ง๋ ์์.
โ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ํ์๊ฐ ์์ผ๋ฉด body๋ ๋น์ด์๊ฒ ๋จ.
- 201, 204 ์ํ ์ฝ๋๋ ๋ฐ๋ ๋ฏธํฌํจ
(์ถ์ฒ : https://developer.mozilla.org/ko/docs/Web/HTTP/Messages)
๋์๊ณผ์
์๋ฒ ์ ์ โ ํด๋ผ์ด์ธํธ โ ์์ฒญ โ ์๋ต โ ํด๋ผ์ด์ธํธ โ ์ฐ๊ฒฐ ์ข
๋ฃ
(์ถ์ฒ : https://enai.tistory.com/26)
-
์ฌ์ฉ์๊ฐ ์น ๋ธ๋ผ์ฐ์ ์ URL ์ฃผ์๋ฅผ ์
๋ ฅํ๋ค.
-
DNS ์๋ฒ์ ์น ์๋ฒ์ ํธ์คํธ ์ด๋ฆ์ IP ์ฃผ์๋ก ๋ณ๊ฒฝ ์์ฒญํ๋ค.
-
์น ์๋ฒ์ TCP ์ฐ๊ฒฐ์ ์๋ํ๋ค.
-
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ์์ฒญํ๋ค.
- HTTP Request Message = Request Header + blank line + Request Body
-
์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์๊ฒ ๋ฐ์ดํฐ๋ฅผ ์๋ตํ๋ค.
- HTTP Response Message = Response Header + blank line + Response Body
-
์๋ฒ ํด๋ผ์ด์ธํธ ๊ฐ ์ฐ๊ฒฐ ์ข
๋ฃ (stateless์ ํน์ง์ด ๋ํ๋จ)
-
์น ๋ธ๋ผ์ฐ์ ๊ฐ ์น ๋ฌธ์ ์ถ๋ ฅ
- 3way-handshaking
- TCP์ ์ ์ ๊ณผ์
- TCP ํต์ ์ ์ด์ฉํ์ฌ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ํด ๋คํธ์ํฌย ์ฐ๊ฒฐ์ ์ค์ (Connection Establish)ํ๋ ๊ณผ์
- ์์ชฝ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ์ค๋น๊ฐ ๋์๋ค๋ ๊ฒ์ ๋ณด์ฅํ๊ณ , ์ค์ ๋ก ๋ฐ์ดํฐ ์ ๋ฌ์ด ์์ํ๊ธฐ ์ ์ ํ์ชฝ์ด ๋ค๋ฅธ ์ชฝ์ด ์ค๋น๋์๋ค๋ ๊ฒ์ ์ ์ ์๋๋ก ํ๋ค.
- 4way-handshaking
- TCP์ ์ ์ ํด์ ๊ณผ์
- FIN ํ๋๊ทธ ์ด์ฉ
- ์ธ์
์ ์ข
๋ฃ์ํค๋ ๋ฐ ์ฌ์ฉ๋๋ฉฐ, ๋ ์ด์ ๋ณด๋ธ ๋ฐ์ดํฐ๊ฐ ์์์ ๋ํ๋
๐ฒย HTTPS๋?
HTTPS๋ HyperText Transfer Protocol Secure์ ์ฝ์์ด๋ฉฐ, HTTP์ ๋ฐ์ดํฐ ์ํธํ๊ฐ ์ถ๊ฐ๋ ํ์ฅ ๋ฒ์ ์ผ๋ก ๋ ์์ ํ ๋ฒ์ ์ด๋ค.
- ํต์ ํ๋ ๊ณผ์ ์ HTTPS๋ ์ ์ก ๋ด์ฉ์ SSL์ ์ฌ์ฉํ์ฌ ์ํธํํจ.
โ ์ํธํ๋ฅผ ํตํด ๋ฐ์ ์์ ์์ ์๋ฅผ ์ ์ธํ ์ค๊ฐ ๋งค๊ฐ์ฒด์์ ํต์ ๋ด์ฉ์ ํ์ธํ ์ ์๊ธฐ ๋๋ฌธ์, ๋ฐ์ ์๊ฐ ์ ์กํ ์ํธ ๋ฐ ๊ธฐ๋ฐ๋ฌธ์๋ฅผ ๋ณดํธํ ์ ์์.
- HTTPS ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ํต์ ์ ์ํํ๋ฉด, ํํ์ด์ง URL์ด โhttps:// โ๋ก ์์ํจ.
- 443๋ฒ ํฌํธ ์ด์ฉ
(์ถ์ฒ : https://seo.tbwakorea.com/blog/https-http/)
๐ย SSL ์ธ์ฆ์
- ์น์ฌ์ดํธ์ ID๋ฅผ ์ธ์ฆํ๊ณ ์ํธํ๋ ์ฐ๊ฒฐ์ ๊ฐ๋ฅํ๊ฒ ํ๋ ๋์งํธ ์ธ์ฆ์
- ์น ์๋ฒ์ ์น ๋ธ๋ผ์ฐ์ ์ฌ์ด์ ์ํธํ๋ ๋งํฌ๋ฅผ ์์ฑํ๊ฒ ํด์ฃผ๋ ๋ณด์ ํ๋กํ ์ฝ
- ๊ณต๊ฐํค/๊ฐ์ธํค ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ํธํํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ ์ํธํ๋๊ณ ์ ์ก๋์ด ์์์ ์ฌ์ฉ์๊ฐ ๋ฐ์ดํฐ๋ฅผ ์กฐํํ์ฌ๋ ์๋ณธ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ๊ฒ ํด์ค
๋์ ๊ณผ์
๊ณต๊ฐํค ์ํธํ ๋ฐฉ์๊ณผ ๋์นญํค ์ํธํ ๋ฐฉ์์ ์ฅ์ ์ ํ์ฉํ ํ์ด๋ธ๋ฆฌ๋ ์ํธ ๋ฐฉ์์ ์ฌ์ฉํ๋ค. (๋ฐ์ดํฐ๋ฅผ ๋์นญํค ๋ฐฉ์์ผ๋ก ์๋ณตํธํํ๊ณ , ๊ณต๊ฐํค ๋ฐฉ์์ผ๋ก ๋์นญํค ์ ๋ฌ)
(์ถ์ฒ : https://velog.io/@averycode/๋คํธ์ํฌ-HTTP์-HTTPS-๋์-๊ณผ์ )
-
ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ ์ ์ํ์ฌ Handshaking ๊ณผ์ ์์ ์๋ก ํ์
1.1.ย Client Hello
- ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์๊ฒ ์ ์กํ ๋ฐ์ดํฐ
- ํด๋ผ์ด์ธํธ ์ธก์์ ์์ฑํย ๋๋ค ๋ฐ์ดํฐ
- ํด-์ ์ํธํ ๋ฐฉ์ ํต์ผ์ ์ํดย ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ฉํ ์ ์๋ ์ํธํ ๋ฐฉ์
- ์ด์ ์ ์ด๋ฏธ Handshaking ๊ธฐ๋ก์ด ์๋ค๋ฉด ์์ ์ ์ฝ์ ์ํด ๊ธฐ์กด ์ธ์
์ ์ฌํ์ฉํ๊ธฐ ์ํย ์ธ์
์์ด๋
1.2.ย Server Hello
- Client Hello์ ๋ํ ์๋ต์ผ๋ก ์ ์กํ ๋ฐ์ดํฐ
- ์๋ฒ ์ธก์์ ์์ฑํย ๋๋ค ๋ฐ์ดํฐ
- ์๋ฒ๊ฐ ์ ํํ ํด๋ผ์ด์ธํธ์ ์ํธํ ๋ฐฉ์
- SSL ์ธ์ฆ์
1.3.ย Client ์ธ์ฆ ํ์ธ
- ์๋ฒ๋ก๋ถํฐ ๋ฐ์ ์ธ์ฆ์๊ฐ CA(์ธ์ฆ ๊ธฐ๊ด)์ ์ํด ๋ฐ๊ธ๋์๋์ง ๋ณธ์ธ์ด ๊ฐ์ง๊ณ ์๋ ๋ชฉ๋ก์์ ํ์ธํ๊ณ , ๋ชฉ๋ก์ ์๋ค๋ฉด CA ๊ณต๊ฐํค๋ก ์ธ์ฆ์ ๋ณตํธํ
- ํด-์ ๊ฐ๊ฐ์ ๋๋ค ๋ฐ์ดํฐ๋ฅผ ์กฐํฉํ์ฌ pre master secret ๊ฐ ์์ฑ(๋ฐ์ดํฐ ์ก์์ ์ ๋์นญํค ์ํธํ์ ์ฌ์ฉํ ํค)
- pre master secret ๊ฐ์ ๊ณต๊ฐํค ๋ฐฉ์์ผ๋ก ์๋ฒ ์ ๋ฌ(๊ณต๊ฐํค๋ ์๋ฒ๋ก๋ถํฐ ๋ฐ์ ์ธ์ฆ์์ ํฌํจ)
- ์ผ๋ จ์ ๊ณผ์ ์ ๊ฑฐ์ณ session key ์์ฑ
1.4.ย Server ์ธ์ฆ ํ์ธ
- ์๋ฒ๋ ๋น๊ณต๊ฐํค๋ก ๋ณตํธํํ์ฌ pre master secret ๊ฐ ์ทจ๋(๋์นญํค ๊ณต์ ์๋ฃ)
- ์ผ๋ จ์ ๊ณผ์ ์ ๊ฑฐ์ณ session key ์์ฑ
1.5.ย Handshaking ์ข
๋ฃ
-
๋ฐ์ดํฐ ์ ์ก
- ์๋ฒ์ ํด๋ผ์ด์ธํธ๋ session key๋ฅผ ํ์ฉํด ๋ฐ์ดํฐ๋ฅผ ์๋ณตํธํํ์ฌ ๋ฐ์ดํฐ ์ก์์
-
์ฐ๊ฒฐ ์ข
๋ฃ ๋ฐ session key ํ๊ธฐ
HTTP์ HTTPS ๋น๊ต
| HTTP | HTTPS |
---|
์๋ฏธ | Hypertext Transfer Protocol | Hypertext Transfer Protocol Secure |
๊ธฐ๋ณธ ํ๋กํ ์ฝ | HTTP/1๊ณผ HTTP/2๋ TCP/IP๋ฅผ ์ฌ์ฉํฉ๋๋ค. HTTP/3์ QUIC ํ๋กํ ์ฝ์ ์ฌ์ฉํฉ๋๋ค. | HTTP ์์ฒญ ๋ฐ ์๋ต์ ์ถ๊ฐ๋ก ์ํธํํ๊ธฐ ์ํด SSL/TLS์ ํจ๊ป HTTP/2 ์ฌ์ฉ |
ํฌํธ | ๊ธฐ๋ณธ ํฌํธ 80 | ๊ธฐ๋ณธ ํฌํธ 443 |
์ฉ๋ | ์ด์ ํ
์คํธ ๊ธฐ๋ฐ ์น ์ฌ์ดํธ | ๋ชจ๋ ์ต์ ์น ์ฌ์ดํธ |
๋ณด์ | ์ถ๊ฐ ๋ณด์ ๊ธฐ๋ฅ ์์ | ํผ๋ธ๋ฆญ ํค ์ํธํ์ SSL ์ธ์ฆ์ ์ฌ์ฉ |
์ด์ | ์ธํฐ๋ท์ ํตํ ํต์ ์ง์ | ์น ์ฌ์ดํธ์ ๋ํ ๊ถ์, ์ ๋ขฐ์ฑ ๋ฐ ๊ฒ์ ์์ง ์์ ๊ฐ์ |
๐กย ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์ ๋ณด์์ด๋ฉฐ HTTPS๋ HTTP์ ๋ค๋ฅด๊ฒ ๋ธ๋ผ์ฐ์ ์ ์๋ฒ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ ์ ์์ ํ๊ณ ย ์ํธํ๋ ์ฐ๊ฒฐ์ ์ค์ ํ๊ธฐ ๋๋ฌธ์ ๋ณด๋ค ์์ ํ๋ค๋ ์ฅ์ ์ด ์๋ค.
๐๏ธย ์์ฃผ ์ฐ์ด๋ HTTP Status Code
200 OK
- ๊ฐ์ฅ ์์ฃผ ๋ณด๊ฒ ๋๋ status code
- ๋ฌธ์ ์์ด ๋ค ์ ์คํ ๋์์ ๋ ๋ณด๋ด๋ ์ฝ๋
301 Moved Permanently
- ํด๋น URI๊ฐ ๋ค๋ฅธ ์ฃผ์๋ก ๋ฐ๋์์ ๋ ๋ณด๋ด๋ ์ฝ๋
400 Bad Request
- ํด๋น ์์ฒญ์ด ์๋ชป๋ ์์ฒญ์ผ ๋ ๋ณด๋ด๋ ์ฝ๋
- ์ฃผ๋ก ์์ฒญ์ ํฌํจ๋ input ๊ฐ๋ค์ด ์๋ชป๋ ๊ฐ๋ค์ด ๋ณด๋ด์ก์ ๋ ์ฌ์ฉ๋๋ ์ฝ๋
- ์๋ฅผ ๋ค์ด, ์ ํ๋ฒํธ๋ฅผ ๋ณด๋ด์ผ ํ๋๋ฐ text๊ฐ ๋ณด๋ด์ก์ ๋ ๋ฑ๋ฑ
401 Unauthorized
- ์ ์ ๊ฐ ํด๋น ์์ฒญ์ ์งํ ํ๋ ค๋ฉด ๋จผ์ ๋ก๊ทธ์ธ์ด๋ ํ์๊ฐ์
๋ฑ์ด ํ์ํ๋ค๋ ๊ฒ์ ๋ํ๋ด๋ ค ํ ๋ ์ฐ์ด๋ ์ฝ๋
403 Forbidden
- ์ ์ ๊ฐ ํด๋น ์์ฒญ์ ๋ํ ๊ถํ์ด ์๋ค๋ ๋ป
- ์๋ฅผ ๋ค์ด, ๊ณผ๊ธํ ์ ์ ๋ง ๋ณผ ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์์ฒญ ํ์ ๋ ๋ฑ
404 Not Found
- ์์ฒญ๋ URI๊ฐ ์กด์ฌํ์ง ์๋๋ค๋ ๋ป
500 Internal Server Error
- ์๋ฒ์์ ์๋ฌ๊ฐ ๋ฌ์ ๋ ์ฌ์ฉ๋๋ ์ฝ๋
์น์ฌ์ดํธ HTTPS ์ ํ์ ์ค์์ฑ
1) ๋ณด์์ ์ฐ์ํ HTTPS
HTTPS๋ HTTP์ ๋ฌ๋ฆฌ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ํธํ๋ ํํ๋ก ์ ์กํ๊ธฐ ๋๋ฌธ์, ์ฌ์ฉ์๊ฐ ๋ฏผ๊ฐํ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ ๋ ์ 3์๊ฐ ๋คํธ์ํฌ๋ฅผ ํตํด ํด๋น ๋ฐ์ดํฐ๋ฅผ ๊ฐ๋ก์ฑ ์ ์์ด ๋ณด์ ์ธก๋ฉด์์ ๋ ์ฐ์ํ๋ค.
์๋ฅผ ๋ค์ด, ์ ์ฉ์นด๋ ์ธ๋ถ ์ ๋ณด ํน์ ๊ณ ๊ฐ ๊ฐ์ธ ์ ๋ณด์ ๊ฐ์ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ๋ณดํธํ๊ธฐ ์ํด์๋ HTTPS๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค.
2) ์ ๋ขฐ์ฑ์ด ๋์ HTTPS
๊ฒ์ ์์ง์ ์ ๋ขฐ์ฑ์ด ๋์ HTTPS์ ์น์ฌ์ดํธ ์์๋ฅผ HTTP ๋ณด๋ค ๋๊ฒ ์ง์ ํ๋ฉฐ, ๋ธ๋ผ์ฐ์ ์ฃผ์ ํ์์ค์์ URL ์์ ์๋ฌผ์ ์์ด์ฝ์ ๋ฐฐ์นํด ์ฌ์ฉ์์๊ฒ HTTPS ์ฐ๊ฒฐ์ ํ์ํ๋ค.
๋ํ ๊ตฌ๊ธ์ HTTPS๋ฅผ ์ฌ์ฉํ์ง ์์ ๊ฒฝ์ฐ URL ์ฐฝ์ โ์์ ํ์ง ์์โ์ด๋ผ๋ ๊ฒฝ๊ณ ๋ฅผ ๋์ฐ๋ ํ๋ํฐ๋ฅผ ์ ์ฉํ๊ณ ์๋๋ฐ, ๋ณดํต ์ฌ์ฉ์๋ค์ ์ถ๊ฐ ๋ณด์์ ๋ํ ์ ๋ขฐ๋ก HTTP๋ณด๋ค๋ HTTPS๋ฅผ ์ ํธํ๋ค.
3) SEO์ ์ข์ ์ํฅ์ ์ฃผ๋ HTTPS
๊ตฌ๊ธ์ ๋ช ๋
์ ๋ถํฐ HTTPS๋ฅผ ์์ ๊ฒฐ์ ์ ํธ๋ก ์ฌ์ฉํ๊ณ ์๊ธฐ๋๋ฌธ์ HTTPS ์ฌ์ฉ์ SEO(๊ฒ์์์ง์ต์ ํ)์๋ ์ข์ ์ํฅ์ ๋ฏธ์น๋ค.
๐ย ์ฐธ๊ณ
https://aws.amazon.com/ko/compare/the-difference-between-https-and-http/
https://mangkyu.tistory.com/98
https://hahahoho5915.tistory.com/62
https://seo.tbwakorea.com/blog/https-http/
https://suji-sw.tistory.com/entry/HTTP์-HTTPS์-๊ฐ๋
๊ณผ-์ฐจ์ดhttps://velog.io/@averycode/๋คํธ์ํฌ-HTTP์-HTTPS-๋์-๊ณผ์ https://velog.io/@averycode/๋คํธ์ํฌ-TCPUDP์-3-Way-Handshake4-Way-Handshake
https://enai.tistory.com/26
https://developer.mozilla.org/ko/docs/Web/HTTP/Messages