# HTTP ์ํ ์ฝ๋
Assembled by GimunLee
# Introduction
๋ชจ๋ HTTP ์๋ต ์ฝ๋๋ 5๊ฐ์ ํด๋์ค(๋ถ๋ฅ)๋ก ๊ตฌ๋ถ๋๋ค. ์ํ ์ฝ๋์ ์ฒซ ๋ฒ์งธ ์ซ์๋ ์๋ต์ ํด๋์ค๋ฅผ ์ ์ํ๋ค. ๋ง์ง๋ง ๋ ์๋ฆฌ๋ ํด๋์ค๋ ๋ถ๋ฅ ์ญํ ์ ํ์ง ์๋๋ค. ์ฒซ์๋ฆฌ์ ๋ํ 5๊ฐ์ง ๊ฐ๋ค์ ๋ค์๊ณผ ๊ฐ๋ค.
- 1xx (์ ๋ณด): ์์ฒญ์ ๋ฐ์์ผ๋ฉฐ ํ๋ก์ธ์ค๋ฅผ ๊ณ์ํ๋ค.
- 2xx (์ฑ๊ณต): ์์ฒญ์ ์ฑ๊ณต์ ์ผ๋ก ๋ฐ์์ผ๋ฉฐ ์ธ์ํ๊ณ ์์ฉํ์๋ค.
- 3xx (๋ฆฌ๋ค์ด๋ ์ ): ์์ฒญ ์๋ฃ๋ฅผ ์ํด ์ถ๊ฐ ์์ ์กฐ์น๊ฐ ํ์ํ๋ค.
- 4xx (ํด๋ผ์ด์ธํธ ์ค๋ฅ): ์์ฒญ์ ๋ฌธ๋ฒ์ด ์๋ชป๋์๊ฑฐ๋ ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์๋ค.
- 5xx (์๋ฒ ์ค๋ฅ): ์๋ฒ๊ฐ ๋ช ๋ฐฑํ ์ ํจํ ์์ฒญ์ ๋ํด ์ถฉ์กฑ์ ์คํจํ๋ค.
# 1xx (์ ๋ณด): ์์ฒญ์ ๋ฐ์์ผ๋ฉฐ ํ๋ก์ธ์ค๋ฅผ ๊ณ์ํ๋ค.
-
์ด ์์์ ์ธ ์๋ต์ ์ง๊ธ๊น์ง์ ์ํ๊ฐ ๊ด์ฐฎ์ผ๋ฉฐ ํด๋ผ์ด์ธํธ๊ฐ ๊ณ์ํด์ ์์ฒญ์ ํ๊ฑฐ๋ ์ด๋ฏธ ์์ฒญ์ ์๋ฃํ ๊ฒฝ์ฐ์๋ ๋ฌด์ํด๋ ๋๋ ๊ฒ์ ์๋ ค์ค๋๋ค.
-
์ด ์ฝ๋๋ ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ธ
Upgrade
์์ฒญ ํค๋์ ๋ํ ์๋ต์ ๋ค์ด๊ฐ๋ฉฐ ์๋ฒ์์ ํ๋กํ ์ฝ์ ๋ณ๊ฒฝํ ๊ฒ์์ ์๋ ค์ค๋๋ค. 102 Processing
(WebDAV)์ด ์ฝ๋๋ ์๋ฒ๊ฐ ์์ฒญ์ ์์ ํ์์ผ๋ฉฐ ์ด๋ฅผ ์ฒ๋ฆฌํ๊ณ ์์ง๋ง, ์์ง ์ ๋๋ก ๋ ์๋ต์ ์๋ ค์ค ์ ์์์ ์๋ ค์ค๋๋ค.
103 Early Hints
์ด ์ํ ์ฝ๋๋ ์ฃผ๋ก
Link
ํค๋์ ํจ๊ป ์ฌ์ฉ๋์ด ์๋ฒ๊ฐ ์๋ต์ ์ค๋นํ๋ ๋์ ์ฌ์ฉ์ ์์ด์ ํธ๊ฐ(user agent) ์ฌ์ ๋ก๋ฉ(preloading)์ ์์ํ ์ ์๋๋ก ํ๋ค.
# 2xx (์ฑ๊ณต): ์์ฒญ์ ์ฑ๊ณต์ ์ผ๋ก ๋ฐ์์ผ๋ฉฐ ์ธ์ํ๊ณ ์์ฉํ์๋ค.
-
์์ฒญ์ด ์ฑ๊ณต์ ์ผ๋ก ๋์์ต๋๋ค. ์ฑ๊ณต์ ์๋ฏธ๋ HTTP ๋ฉ์๋์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค: GET: ๋ฆฌ์์ค๋ฅผ ๋ถ๋ฌ์์ ๋ฉ์์ง ๋ฐ๋์ ์ ์ก๋์์ต๋๋ค. HEAD: ๊ฐ์ฒด ํด๋๊ฐ ๋ฉ์์ง ๋ฐ๋์ ์์ต๋๋ค. PUT ๋๋ POST: ์ํ ๊ฒฐ๊ณผ์ ๋ํ ๋ฆฌ์์ค๊ฐ ๋ฉ์์ง ๋ฐ๋์ ์ ์ก๋์์ต๋๋ค. TRACE: ๋ฉ์์ง ๋ฐ๋๋ ์๋ฒ์์ ์์ ํ ์์ฒญ ๋ฉ์์ง๋ฅผ ํฌํจํ๊ณ ์์ต๋๋ค.
-
์์ฒญ์ด ์ฑ๊ณต์ ์ด์์ผ๋ฉฐ ๊ทธ ๊ฒฐ๊ณผ๋ก ์๋ก์ด ๋ฆฌ์์ค๊ฐ ์์ฑ๋์์ต๋๋ค. ์ด ์๋ต์ ์ผ๋ฐ์ ์ผ๋ก POST ์์ฒญ ๋๋ ์ผ๋ถ PUT ์์ฒญ ์ดํ์ ๋ฐ๋ผ์ต๋๋ค.
202 Accepted
์์ฒญ์ ์์ ํ์์ง๋ง ๊ทธ์ ์ํ์ฌ ํ๋ํ ์ ์์ต๋๋ค. ์ด ์๋ต์ ์์ฒญ ์ฒ๋ฆฌ์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ์ดํ์ HTTP๋ก ๋น๋๊ธฐ ์๋ต์ ๋ณด๋ด๋ ๊ฒ์ ๋ํด์ ๋ช ํํ๊ฒ ๋ช ์ํ์ง ์์ต๋๋ค. ์ด๊ฒ์ ๋ค๋ฅธ ํ๋ก์ธ์ค์์ ์ฒ๋ฆฌ ๋๋ ์๋ฒ๊ฐ ์์ฒญ์ ๋ค๋ฃจ๊ณ ์๊ฑฐ๋ ๋ฐฐ์น ํ๋ก์ธ์ค๋ฅผ ํ๊ณ ์๋ ๊ฒฝ์ฐ๋ฅผ ์ํด ๋ง๋ค์ด์ก์ต๋๋ค.
203 Non-Authoritative Information
์ด ์๋ต ์ฝ๋๋ ๋๋ ค๋ฐ์ ๋ฉํ ์ ๋ณด ์ธํธ๊ฐ ์ค๋ฆฌ์ง ์๋ฒ์ ๊ฒ๊ณผ ์ผ์นํ์ง ์์ง๋ง ๋ก์ปฌ์ด๋ ์๋ ํํฐ ๋ณต์ฌ๋ณธ์์ ๋ชจ์์ก์์ ์๋ฏธํฉ๋๋ค. ์ด๋ฌํ ์กฐ๊ฑด์์๋ ์ด ์๋ต์ด ์๋๋ผ 200 OK ์๋ต์ ๋ฐ๋์ ์ฐ์ ๋ฉ๋๋ค.
-
์์ฒญ์ ๋ํด์ ๋ณด๋ด์ค ์ ์๋ ์ฝํ ์ธ ๊ฐ ์์ง๋ง, ํค๋๋ ์๋ฏธ์์ ์ ์์ต๋๋ค. ์ฌ์ฉ์-์์ด์ ํธ๋ ๋ฆฌ์์ค๊ฐ ์บ์๋ ํค๋๋ฅผ ์๋ก์ด ๊ฒ์ผ๋ก ์ ๋ฐ์ดํธ ํ ์ ์์ต๋๋ค.
-
์ด ์๋ต ์ฝ๋๋ ์์ฒญ์ ์์ํ ์ดํ์ ์ฌ์ฉ์ ์์ด์ ํธ์๊ฒ ์ด ์์ฒญ์ ๋ณด๋ธ ๋ฌธ์ ๋ทฐ๋ฅผ ๋ฆฌ์ ํ๋ผ๊ณ ์๋ ค์ค๋๋ค.
-
์ด ์๋ต ์ฝ๋๋ ํด๋ผ์ด์ธํธ์์ ๋ณต์์ ์คํธ๋ฆผ์ ๋ถํ ๋ค์ด๋ก๋๋ฅผ ํ๊ณ ์ ๋ฒ์ ํค๋๋ฅผ ์ ์กํ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ๋ฉ๋๋ค.
207 Multi-Status
(WebDAV)๋ฉํฐ-์ํ ์๋ต์ ์ฌ๋ฌ ๋ฆฌ์์ค๊ฐ ์ฌ๋ฌ ์ํ ์ฝ๋์ธ ์ํฉ์ด ์ ์ ํ ๊ฒฝ์ฐ์ ํด๋น๋๋ ์ ๋ณด๋ฅผ ์ ๋ฌํฉ๋๋ค.
208 Multi-Status
(WebDAV)DAV์์ ์ฌ์ฉ๋ฉ๋๋ค: propstat(property์ status์ ํฉ์ฑ์ด) ์๋ต ์์ฑ์ผ๋ก ๋์ผ ์ปฌ๋ ์ ์ผ๋ก ๋ฐ์ธ๋๋ ๋ณต์์ ๋ด๋ถ ๋ฉค๋ฒ๋ฅผ ๋ฐ๋ณต์ ์ผ๋ก ์ด๊ฑฐํ๋ ๊ฒ์ ํผํ๊ธฐ ์ํด ์ฌ์ฉ๋ฉ๋๋ค.
226 IM Used
(HTTP Delta encoding)์๋ฒ๊ฐ GET ์์ฒญ์ ๋ํ ๋ฆฌ์์ค์ ์๋ฌด๋ฅผ ๋ค ํ๊ณ , ๊ทธ๋ฆฌ๊ณ ์๋ต์ด ํ๋ ๋๋ ๊ทธ ์ด์์ ์ธ์คํด์ค ์กฐ์์ด ํ์ฌ ์ธ์คํด์ค์ ์ ์ฉ์ด ๋์์์ ์๋ ค์ค๋๋ค.
# 3xx (๋ฆฌ๋ค์ด๋ ์ ): ์์ฒญ ์๋ฃ๋ฅผ ์ํด ์ถ๊ฐ ์์ ์กฐ์น๊ฐ ํ์ํ๋ค.
300 Multiple Choice
์์ฒญ์ ๋ํด์ ํ๋ ์ด์์ ์๋ต์ด ๊ฐ๋ฅํฉ๋๋ค. ์ฌ์ฉ์ ์์ด์ ํธ ๋๋ ์ฌ์ฉ์๋ ๊ทธ์ค์ ํ๋๋ฅผ ๋ฐ๋์ ์ ํํด์ผ ํฉ๋๋ค. ์๋ต ์ค ํ๋๋ฅผ ์ ํํ๋ ๋ฐฉ๋ฒ์ ๋ํ ํ์คํ ๋ ๋ฐฉ๋ฒ์ ์กด์ฌํ์ง ์์ต๋๋ค.
-
์ด ์๋ต ์ฝ๋๋ ์์ฒญํ ๋ฆฌ์์ค์ URI๊ฐ ๋ณ๊ฒฝ๋์์์ ์๋ฏธํฉ๋๋ค. ์๋ก์ด URI๊ฐ ์๋ต์์ ์๋ง๋ ์ฃผ์ด์ง ์ ์์ต๋๋ค.
-
์ด ์๋ต ์ฝ๋๋ ์์ฒญํ ๋ฆฌ์์ค์ URI๊ฐ ์ผ์์ ์ผ๋ก ๋ณ๊ฒฝ๋์์์ ์๋ฏธํฉ๋๋ค. ์๋กญ๊ฒ ๋ณ๊ฒฝ๋ URI๋ ๋์ค์ ๋ง๋ค์ด์ง ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ฏ๋ก, ํด๋ผ์ด์ธํธ๋ ํฅํ์ ์์ฒญ๋ ๋ฐ๋์ ๋์ผํ URI๋ก ํด์ผํฉ๋๋ค.
303 See Other
ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญํ ๋ฆฌ์์ค๋ฅผ ๋ค๋ฅธ URI์์ GET ์์ฒญ์ ํตํด ์ป์ด์ผ ํ ๋, ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ๋ก ์ง์ ๋ณด๋ด๋ ์๋ต์ ๋๋ค.
-
์ด๊ฒ์ ์บ์๋ฅผ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค. ์ด๊ฒ์ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต์ด ์์ ๋์ง ์์์์ ์๋ ค์ฃผ๋ฉฐ, ๊ทธ๋ฌ๋ฏ๋ก ํด๋ผ์ด์ธํธ๋ ๊ณ์ํด์ ์๋ต์ ์บ์๋ ๋ฒ์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
305 Use Proxy
์ด์ ๋ฒ์ ์ HTTP ๊ธฐ์ ์ฌ์์์ ์ ์๋์์ผ๋ฉฐ, ์์ฒญํ ์๋ต์ ๋ฐ๋์ ํ๋ก์๋ฅผ ํตํด์ ์ ์ํด์ผ ํ๋ ๊ฒ์ ์๋ ค์ค๋๋ค. ์ด๊ฒ์ ํ๋ก์์ in-band ์ค์ ์ ๋ํ ๋ณด์์์ ๊ฑฑ์ ์ผ๋ก ์ธํ์ฌ ์ฌ๋ผ์ ธ๊ฐ๊ณ ์์ต๋๋ค.
306 unused
์ด ์๋ต ์ฝ๋๋ ๋์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ, ํ์ฌ๋ ์ถํ ์ฌ์ฉ์ ์ํด ์์ฝ๋์ด ์์ต๋๋ค. ์ด๊ฒ์ HTTP 1.1 ๊ธฐ์ ์ฌ์ ์ด์ ๋ฒ์ ์์ ์ฌ์ฉ๋์์ต๋๋ค.
307 Temporary Redirect
ํด๋ผ๋ฆฌ์ธํธ๊ฐ ์์ฒญํ ๋ฆฌ์์ค๊ฐ ๋ค๋ฅธ URI์ ์์ผ๋ฉฐ, ์ด์ ์์ฒญ๊ณผ ๋์ผํ ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์์ฒญํด์ผํ ๋, ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ์ ์ด ์๋ต์ ์ง์ ๋ณด๋ ๋๋ค. ์ด๊ฒ์
302 Found
HTTP ์๋ต ์ฝ๋์ ๋์ผํ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ์ฌ์ฉ์ ์์ด์ ํธ๊ฐ ๋ฐ๋์ ์ฌ์ฉ๋ HTTP ๋ฉ์๋๋ฅผ ๋ณ๊ฒฝํ์ง ๋ง์์ผ ํ๋ ์ ๋ง ๋ค๋ฆ ๋๋ค: ๋ง์ฝ ์ฒซ ์์ฒญ์POST
๊ฐ ์ฌ์ฉ๋์๋ค๋ฉด, ๋๋ฒ์งธ ์์ฒญ๋ ๋ฐ๋์POST
๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.308 Permanent Redirect
์ด๊ฒ์ ๋ฆฌ์์ค๊ฐ ์ด์ HTTP ์๋ต ํค๋์
Location:
์ ๋ช ์๋ ์๊ตฌํ ๋ค๋ฅธ URI์ ์์นํ๊ณ ์์์ ์๋ฏธํฉ๋๋ค. ์ด๊ฒ์301 Moved Permanently
HTTP ์๋ต ์ฝ๋์ ๋์ผํ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ, ์ฌ์ฉ์ ์์ด์ ํธ๊ฐ ๋ฐ๋์ HTTP ๋ฉ์๋๋ฅผ ๋ณ๊ฒฝํ์ง ๋ง์์ผ ํ๋ ์ ๋ง ๋ค๋ฆ ๋๋ค: ๋ง์ฝ ์ฒซ ์์ฒญ์POST
๊ฐ ์ฌ์ฉ๋์๋ค๋ฉด, ๋๋ฒ์งธ ์์ฒญ๋ ๋ฐ๋์POST
๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
# 4xx (ํด๋ผ์ด์ธํธ ์ค๋ฅ): ์์ฒญ์ ๋ฌธ๋ฒ์ด ์๋ชป๋์๊ฑฐ๋ ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์๋ค.
-
์ด ์๋ต์ ์๋ชป๋ ๋ฌธ๋ฒ์ผ๋ก ์ธํ์ฌ ์๋ฒ๊ฐ ์์ฒญ์ ์ดํดํ ์ ์์์ ์๋ฏธํฉ๋๋ค.
-
๋น๋ก HTTP ํ์ค์์๋ "๋ฏธ์น์ธ(unauthorized)"๋ฅผ ๋ช ํํ ํ๊ณ ์์ง๋ง, ์๋ฏธ์ ์ด ์๋ต์ "๋น์ธ์ฆ(unauthenticated)"์ ์๋ฏธํฉ๋๋ค. ํด๋ผ์ด์ธํธ๋ ์์ฒญํ ์๋ต์ ๋ฐ๊ธฐ ์ํด์๋ ๋ฐ๋์ ์ค์ค๋ก๋ฅผ ์ธ์ฆํด์ผ ํฉ๋๋ค.
402 Payment Required
์ด ์๋ต ์ฝ๋๋ ๋์ค์ ์ฌ์ฉ๋ ๊ฒ์ ๋๋นํด ์์ฝ๋์์ต๋๋ค. ์ฒซ ๋ชฉํ๋ก๋ ๋์งํธ ๊ฒฐ์ ์์คํ ์ ์ฌ์ฉํ๊ธฐ ์ํ์ฌ ๋ง๋ค์ด์ก์ง๋ง ์ง๊ธ ์ฌ์ฉ๋๊ณ ์์ง๋ ์์ต๋๋ค.
-
ํด๋ผ์ด์ธํธ๋ ์ฝํ ์ธ ์ ์ ๊ทผํ ๊ถ๋ฆฌ๋ฅผ ๊ฐ์ง๊ณ ์์ง ์์ต๋๋ค. ์๋ฅผ๋ค์ด ๊ทธ๋ค์ ๋ฏธ์น์ธ์ด์ด์ ์๋ฒ๋ ๊ฑฐ์ ์ ์ํ ์ ์ ํ ์๋ต์ ๋ณด๋ ๋๋ค. 401๊ณผ ๋ค๋ฅธ ์ ์ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ๊ฐ ๋๊ตฌ์ธ์ง ์๊ณ ์์ต๋๋ค.
-
์๋ฒ๋ ์์ฒญ๋ฐ์ ๋ฆฌ์์ค๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค. ๋ธ๋ผ์ฐ์ ์์๋ ์๋ ค์ง์ง ์์ URL์ ์๋ฏธํฉ๋๋ค. ์ด๊ฒ์ API์์ ์ข ์ ์ ์ ์ ํ์ง๋ง ๋ฆฌ์์ค ์์ฒด๋ ์กด์ฌํ์ง ์์์ ์๋ฏธํ ์๋ ์์ต๋๋ค. ์๋ฒ๋ค์ ์ธ์ฆ๋ฐ์ง ์์ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ๋ฆฌ์์ค๋ฅผ ์จ๊ธฐ๊ธฐ ์ํ์ฌ ์ด ์๋ต์ 403 ๋์ ์ ์ ์กํ ์๋ ์์ต๋๋ค. ์ด ์๋ต ์ฝ๋๋ ์น์์ ๋ฐ๋ณต์ ์ผ๋ก ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ฅ ์ ๋ช ํ ์ง๋ ๋ชจ๋ฆ ๋๋ค.
-
์์ฒญํ ๋ฉ์๋๋ ์๋ฒ์์ ์๊ณ ์์ง๋ง, ์ ๊ฑฐ๋์๊ณ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ด๋ค API์์ ๋ฆฌ์์ค๋ฅผ ์ญ์ ํ๋ ๊ฒ์ ๊ธ์งํ ์ ์์ต๋๋ค. ํ์์ ์ธ ๋ฉ์๋์ธ
GET
๊ณผHEAD
๋ ์ ๊ฑฐ๋ ์ ์์ผ๋ฉฐ ์ด ์๋ฌ ์ฝ๋๋ฅผ ๋ฆฌํดํ ์ ์์ต๋๋ค. 406 Not Acceptable
์ด ์๋ต์ ์๋ฒ๊ฐ ์๋ฒ ์ฃผ๋ ์ฝํ ์ธ ํ์ ์ ์ํํ ์ดํ, ์ฌ์ฉ์ ์์ด์ ํธ์์ ์ ํด์ค ๊ท๊ฒฉ์ ๋ฐ๋ฅธ ์ด๋ ํ ์ฝํ ์ธ ๋ ์ฐพ์ง ์์์ ๋, ์น์๋ฒ๊ฐ ๋ณด๋ ๋๋ค.
407 Proxy Authentication Required
์ด๊ฒ์ 401๊ณผ ๋น์ทํ์ง๋ง ํ๋ก์์ ์ํด ์๋ฃ๋ ์ธ์ฆ์ด ํ์ํฉ๋๋ค.
408 Request Timeout
์ด ์๋ต์ ์์ฒญ์ ํ์ง ์๊ฐ์ด ์ค๋๋ ์ฐ๊ฒฐ์ ์ผ๋ถ ์๋ฒ๊ฐ ์ ์กํ๋ฉฐ, ์ด๋จ ๋์๋ ์ด์ ์ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์ด๋ ํ ์์ฒญ์ด ์์๋ค๊ณ ํ๋๋ผ๋ ๋ณด๋ด์ง๊ธฐ๋ ํฉ๋๋ค. ์ด๊ฒ์ ์๋ฒ๊ฐ ์ฌ์ฉ๋์ง ์๋ ์ฐ๊ฒฐ์ ๋๊ณ ์ถ์ดํ๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ์ด ์๋ต์ ํน์ ๋ช๋ช ๋ธ๋ผ์ฐ์ ์์ ๋น๋ฒํ๊ฒ ๋ณด์ด๋๋ฐ, Chrome, Firefox 27+, ๋๋ IE9์ ๊ฐ์ ์น์ํ ์๋๋ฅผ ์ฌ๋ฆฌ๊ธฐ ์ํด HTTP ์ฌ์ ์ฐ๊ฒฐ ๋ฉ์นด๋์ฆ์ ์ฌ์ฉํ๋ ๋ธ๋ผ์ฐ์ ๋ค์ด ํด๋น๋ฉ๋๋ค. ๋ํ ์ผ๋ถ ์๋ฒ๋ ์ด ๋ฉ์์ง๋ฅผ ๋ณด๋ด์ง ์๊ณ ์ฐ๊ฒฐ์ ๋์ด๋ฒ๋ฆฌ๊ธฐ๋ ํฉ๋๋ค.
-
์ด ์๋ต์ ์์ฒญ์ด ํ์ฌ ์๋ฒ์ ์ํ์ ์ถฉ๋๋ ๋ ๋ณด๋ ๋๋ค.
410 Gone
์ด ์๋ต์ ์์ฒญํ ์ฝํ ์ธ ๊ฐ ์๋ฒ์์ ์๊ตฌ์ ์ผ๋ก ์ญ์ ๋์์ผ๋ฉฐ, ์ ๋ฌํด ์ค ์ ์๋ ์ฃผ์ ์ญ์ ์กด์ฌํ์ง ์์ ๋ ๋ณด๋ ๋๋ค. ํด๋ผ์ด์ธํธ๊ฐ ๊ทธ๋ค์ ์บ์ฌ์ ๋ฆฌ์์ค์ ๋ํ ๋งํฌ๋ฅผ ์ง์ฐ๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค. HTTP ๊ธฐ์ ์ฌ์์ ์ด ์ํ ์ฝ๋๊ฐ "์ผ์์ ์ธ, ํ๋ณด์ฉ ์๋น์ค"์ ์ฌ์ฉ๋๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค. API๋ ์๋ ค์ง ๋ฆฌ์์ค๊ฐ ์ด ์ํ ์ฝ๋์ ํจ๊ป ์ญ์ ๋์๋ค๊ณ ๊ฐ์ํด์๋ ์๋๋ค.
-
์๋ฒ์์ ํ์๋ก ํ๋
Content-Length
ํค๋ ํ๋๊ฐ ์ ์๋์ง ์์ ์์ฒญ์ด ๋ค์ด์๊ธฐ ๋๋ฌธ์ ์๋ฒ๊ฐ ์์ฒญ์ ๊ฑฐ์ ํฉ๋๋ค. 412 Precondition Failed
ํด๋ผ์ด์ธํธ์ ํค๋์ ์๋ ์ ์ ์กฐ๊ฑด์ ์๋ฒ์ ์ ์ ์กฐ๊ฑด์ ์ ์ ํ์ง ์์ต๋๋ค.
-
์์ฒญ ์ํฐํฐ๋ ์๋ฒ์์ ์ ์ํ ํ๊ณ๋ณด๋ค ํฝ๋๋ค; ์๋ฒ๋ ์ฐ๊ฒฐ์ ๋๊ฑฐ๋ ํน์
Retry-After
ํค๋ ํ๋๋ก ๋๋ ค๋ณด๋ผ ๊ฒ์ด๋ค. 414 URI Too Long
ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญํ URI๋ ์๋ฒ์์ ์ฒ๋ฆฌํ์ง ์๊ธฐ๋ก ํ ๊ธธ์ด๋ณด๋ค ๊น๋๋ค.
415 Unsupported Media Type
์์ฒญํ ๋ฏธ๋์ด ํฌ๋งท์ ์๋ฒ์์ ์ง์ํ์ง ์์ต๋๋ค, ์๋ฒ๋ ํด๋น ์์ฒญ์ ๊ฑฐ์ ํ ๊ฒ์ ๋๋ค.
416 Requested Range Not Satisfiable
Range
ํค๋ ํ๋์ ์์ฒญํ ์ง์ ๋ฒ์๋ฅผ ๋ง์กฑ์ํฌ ์ ์์ต๋๋ค; ๋ฒ์๊ฐ ํ๊ฒ URI ๋ฐ์ดํฐ์ ํฌ๊ธฐ๋ฅผ ๋ฒ์ด๋ฌ์ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.417 Expectation Failed
์ด ์๋ต ์ฝ๋๋
Expect
์์ฒญ ํค๋ ํ๋๋ก ์์ฒญํ ์์์ด ์๋ฒ์์๋ ์ ๋นํ์ง ์์์ ์๋ ค์ค๋๋ค.-
์๋ฒ๋ ์ปคํผ๋ฅผ ์ฐป ์ฃผ์ ์์ ๋์ด๋ ๊ฒ์ ๊ฑฐ์ ํฉ๋๋ค.
421 Misdirected Request
์๋ฒ๋ก ์ ๋๋ ์์ฒญ์ ์๋ต์ ์์ฑํ ์ ์์ต๋๋ค. ์ด๊ฒ์ ์๋ฒ์์ ์์ฒญ URI์ ์ฐ๊ฒฐ๋ ์คํด๊ณผ ๊ถํ์ ๊ตฌ์ฑํ์ฌ ์๋ต์ ์์ฑํ ์ ์์ ๋ ๋ณด๋ด์ง๋๋ค.
422 Unprocessable Entity
(WebDAV)์์ฒญ์ ์ ๋ง๋ค์ด์ก์ง๋ง, ๋ฌธ๋ฒ ์ค๋ฅ๋ก ์ธํ์ฌ ๋ฐ๋ฅผ ์ ์์ต๋๋ค.
423 Locked
(WebDAV)๋ฆฌ์์ค๋ ์ ๊ทผํ๋ ๊ฒ์ด ์ ๊ฒจ์์ต๋๋ค.
424 Failed Dependency
(WebDAV)์ด์ ์์ฒญ์ด ์คํจํ์๊ธฐ ๋๋ฌธ์ ์ง๊ธ์ ์์ฒญ๋ ์คํจํ์์ต๋๋ค.
426 Upgrade Required
์๋ฒ๋ ์ง๊ธ์ ํ๋กํ ์ฝ์ ์ฌ์ฉํ์ฌ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๊ฒ์ ๊ฑฐ์ ํ์์ง๋ง, ํด๋ผ์ด์ธํธ๊ฐ ๋ค๋ฅธ ํ๋กํ ์ฝ๋ก ์ ๊ทธ๋ ์ด๋๋ฅผ ํ๋ฉด ์ฒ๋ฆฌ๋ฅผ ํ ์ง๋ ๋ชจ๋ฆ ๋๋ค. ์๋ฒ๋
Upgrade
ํค๋์ ํ์๋ก ํ๋ ํ๋กํ ์ฝ์ ์๋ ค์ฃผ๊ธฐ ์ํด 426 ์๋ต์ ๋ณด๋ ๋๋ค.428 Precondition Required
์ค๋ฆฌ์ง ์๋ฒ๋ ์์ฒญ์ด ์กฐ๊ฑด์ ์ด์ด์ผ ํฉ๋๋ค. ํด๋ผ์ด์ธํธ๊ฐ ๋ฆฌ์์ค๋ฅผ GETํด์, ์์ ํ๊ณ , ๊ทธ๋ฆฌ๊ณ PUT์ผ๋ก ์๋ฒ์ ๋๋ ค๋๋ ๋์ ์๋ํํฐ๊ฐ ์๋ฒ์ ์ํ๋ฅผ ์์ ํ์ฌ ๋ฐ์ํ๋ ์ถฉ๋์ธ '์ ๋ฐ์ดํธ ์์ค'์ ์๋ฐฉํ๊ธฐ ์ํ ๋ชฉ์ ์ ๋๋ค.
429 Too Many Requests
์ฌ์ฉ์๊ฐ ์ง์ ๋ ์๊ฐ์ ๋๋ฌด ๋ง์ ์์ฒญ์ ๋ณด๋์ต๋๋ค("rate limiting").
431 Request Header Fields Too Large
์์ฒญํ ํค๋ ํ๋๊ฐ ๋๋ฌด ํฌ๊ธฐ ๋๋ฌธ์ ์๋ฒ๋ ์์ฒญ์ ์ฒ๋ฆฌํ์ง ์์ ๊ฒ์ ๋๋ค. ์์ฒญ์ ํฌ๊ธฐ๋ฅผ ์ค์ธ ๋ค์์ ๋ค์ ์ ์กํด์ผ ํฉ๋๋ค.
451 Unavailable For Legal Reasons
์ฌ์ฉ์๊ฐ ์์ฒญํ ๊ฒ์ ์ ๋ถ์ ์ํด ๊ฒ์ด๋ ์น ํ์ด์ง์ ๊ฐ์ ๋ถ๋ฒ์ ์ธ ๋ฆฌ์์ค์ ๋๋ค.
# 5xx (์๋ฒ ์ค๋ฅ): ์๋ฒ๊ฐ ๋ช ๋ฐฑํ ์ ํจํ ์์ฒญ์ ๋ํด ์ถฉ์กฑ์ ์คํจํ๋ค.
-
์๋ฒ๊ฐ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ๋ชจ๋ฅด๋ ์ํฉ๊ณผ ๋ง์ฃผ์ณค๋ค. ์๋ฒ๋ ์์ง ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์ ์ ์๋ค.
501 Not Implemented
์์ฒญ ๋ฐฉ๋ฒ์ ์๋ฒ์์ ์ง์๋์ง ์์ผ๋ฏ๋ก ์ฒ๋ฆฌํ ์ ์๋ค. ์๋ฒ๊ฐ ์ง์ํด์ผ ํ๋ ์ ์ผํ ๋ฐฉ๋ฒ์
GET
์HEAD
์ด๋ค. ์ด ์ฝ๋๋ ๋ฐํํ๋ฉด ์๋ฉ๋๋ค.502 Bad Gateway
์ด ์ค๋ฅ ์๋ต์ ์๋ฒ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๋ฐ ํ์ํ ์๋ต์ ์ป๊ธฐ ์ํด ๊ฒ์ดํธ์จ์ด๋ก ์์ ํ๋ ๋์ ์๋ชป๋ ์๋ต์ ์์ ํ์์ ์๋ฏธํ๋ค.
-
์๋ฒ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ ์ค๋น๊ฐ ๋์ง ์์๋ค. ์ผ๋ฐ์ ์ธ ์์ธ์ ์ ์ง๋ณด์๋ฅผ ์ํด ์๋์ด ์ค๋จ๋๊ฑฐ๋ ๊ณผ๋ถํ๊ฐ ๊ฑธ๋ฆฐ ์๋ฒ๋ค. ์ด ์๋ต๊ณผ ํจ๊ป ๋ฌธ์ ๋ฅผ ์ค๋ช ํ๋ ์ฌ์ฉ์ ์นํ์ ์ธ ํ์ด์ง๊ฐ ์ ์ก๋์ด์ผ ํ๋ค๋ ์ ์ ์ ์ํ์ญ์์ค. ์ด ์๋ต์ ์์ ์กฐ๊ฑด์ ์ฌ์ฉ๋์ด์ผ ํ๋ฉฐ,
Retry-After:
HTTP ํค๋๋ ๊ฐ๋ฅํ๋ฉด ์๋น์ค๋ฅผ ๋ณต๊ตฌํ๊ธฐ ์ ์์ ์๊ฐ์ ํฌํจํด์ผ ํ๋ค. ์น๋ง์คํฐ๋ ๋ํ ์ด๋ฌํ ์ผ์์ ์ธ ์กฐ๊ฑด ์๋ต์ ์บ์ํ์ง ์์์ผ ํ๋ฏ๋ก ์ด ์๋ต๊ณผ ํจ๊ป ์ ์ก๋๋ ์บ์ฑ ๊ด๋ จ ํค๋์ ๋ํด์๋ ์ฃผ์ํด์ผ ํ๋ค. 504 Gateway Timeout
์ด ์ค๋ฅ ์๋ต์ ์๋ฒ๊ฐ ๊ฒ์ดํธ์จ์ด ์ญํ ์ ํ๊ณ ์์ผ๋ฉฐ ์ ์์ ์๋ต์ ๋ฐ์ ์ ์์ ๋ ์ฃผ์ด์ง๋ค.
505 HTTP Version Not Supported
์์ฒญ์ ์ฌ์ฉ๋ HTTP ๋ฒ์ ์ ์๋ฒ์์ ์ง์๋์ง ์์.
506 Variant Also Negotiates
์๋ฒ์ ๋ด๋ถ ๊ตฌ์ฑ ์ค๋ฅ๊ฐ ์๋ค. ์ฆ, ์์ฒญ์ ์ํ ํฌ๋ช ํ ์ปจํ ์ธ ํ์์ด ์ํ ์ฐธ์กฐ๋ก ์ด์ด์ง๋ค.
507 Insufficient Storage
์๋ฒ์ ๋ด๋ถ ๊ตฌ์ฑ ์ค๋ฅ๊ฐ ์๋ค. ์ฆ, ์ ํํ ๊ฐ๋ณ ๋ฆฌ์์ค๋ ํฌ๋ช ํ ์ฝํ ์ธ ํ์์ ์ฐธ์ฌํ๋๋ก ๊ตฌ์ฑ๋๋ฏ๋ก ํ์ ๊ณผ์ ์์ ์ ์ ํ ๋์ ์ด ์๋๋ค.
508 Loop Detected
(WebDAV)์๋ฒ๊ฐ ์์ฒญ์ ์ฒ๋ฆฌํ๋ ๋์ ๋ฌดํ ๋ฃจํ๋ฅผ ๊ฐ์งํ๋ค.
510 Not Extended
์๋ฒ๊ฐ ์์ฒญ์ ์ดํํ๋ ค๋ฉด ์์ฒญ์ ๋ํ ์ถ๊ฐ ํ์ฅ์ด ํ์ํ๋ค.
511 Network Authentication Required
511 ์ํ ์ฝ๋๋ ํด๋ผ์ด์ธํธ๊ฐ ๋คํธ์ํฌ ์ก์ธ์ค๋ฅผ ์ป๊ธฐ ์ํด ์ธ์ฆํ ํ์๊ฐ ์์์ ๋ํ๋ธ๋ค.