๐Ÿก HTTP ํ—ค๋” (์ผ๋ฐ˜์ •๋ณด, ํŠน๋ณ„ํ•œ ์ •๋ณด, ์ธ์ฆ, ์ฟ ํ‚ค)

leehyunjuยท2021๋…„ 6์›” 8์ผ
1

๋„คํŠธ์›Œํฌ

๋ชฉ๋ก ๋ณด๊ธฐ
6/14
post-thumbnail

์•ˆ๋…•ํ•˜์„ธ์š” HTTP ํ—ค๋”์— ์ผ๋ฐ˜์ •๋ณด, ํŠน๋ณ„ํ•œ ์ •๋ณด, ์ธ์ฆ๊ณผ ์ฟ ํ‚ค์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.


๐Ÿ‘‰ ์ผ๋ฐ˜์ •๋ณด

  • From : ์œ ์ € ์—์ด์ „ํŠธ์˜ ์ด๋ฉ”์ผ ์ •๋ณด
  • Referer : ์ด์ „ ์›น ํŽ˜์ด์ง€ ์ฃผ์†Œ
  • User-Agent : ์œ ์ € ์—์ด์ „ํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ •๋ณด
  • Server : ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์˜ค๋ฆฌ์ง„ ์„œ๋ฒ„์˜ ์†Œํ”„ํŠธ์›จ์–ด ์ •๋ณด
  • Date : ๋ฉ”์‹œ์ง€๊ฐ€ ์ƒ์„ฑ๋œ ๋‚ ์งœ

From (์œ ์ € ์—์ด์ „ํŠธ์˜ ์ด๋ฉ”์ผ ์ •๋ณด)

  • ์ผ๋ฐ˜์ ์œผ๋กœ ์ž˜ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค.
  • ๊ฒ€์ƒ‰ ์—”์ง„ ๊ฐ™์€ ๊ณณ์—์„œ, ์ฃผ๋กœ ์‚ฌ์šฉ
  • ์š”์ฒญ์—์„œ ์‚ฌ์šฉํ•œ๋‹ค.

Referer (์ด์ „ ์›น ํŽ˜์ด์ง€ ์ฃผ์†Œ)

  • ํ˜„์žฌ ์š”์ฒญ๋œ ํŽ˜์ด์ง€์˜ ์ด์ „ ์›น ํŽ˜์ด์ง€ ์ฃผ์†Œ
  • A -> B๋กœ ์ด๋™ํ•˜๋Š” ๊ฒฝ์šฐ B๋ฅผ ์š”์ฒญํ•  ๋•Œ, Referer : A๋ฅผ ํฌํ•จํ•ด์„œ ์š”์ฒญํ•œ๋‹ค.
  • Referer๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์œ ์ž… ๊ฒฝ๋กœ ๋ถ„์„ ๊ฐ€๋Šฅ
  • ์š”์ฒญ์—์„œ ์‚ฌ์šฉ

์ด ์˜ˆ์‹œ๋ฅผ ๋“ค์–ด๋ณด๋ฉด ์ข€ ๋” ์ดํ•ดํ•˜๊ธฐ๊ฐ€ ์‰ฝ๋‹ค.
์•„๋ธ ๋…ธ๋ž˜ hello ์œ„ํ‚ค๋ฐฑ๊ณผ ํŽ˜์ด์ง€์— ๋“ค์–ด์˜ค๊ธฐ ์ „, referer๋Š” ์ด์ „ ์›น ํŽ˜์ด์ง€ ์ฃผ์†Œ๋ฅผ ๋œปํ•˜๋Š”๋ฐ ๋„คํŠธ์›Œํฌ ์ชฝ์„ ํ™•์ธํ•ด๋ณด๋ฉด

referer : https://www.google.com/

์ด์ „์—๋Š” ๊ตฌ๊ธ€์—์„œ ๋“ค์–ด์˜จ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

User-agent (์œ ์ € ์—์ด์ „ํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ •๋ณด)

  • user-agent : Mozilla/5.0
  • ํด๋ผ์ด์–ธํŠธ์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ •๋ณด (์›น๋ธŒ๋ผ์šฐ์ € ์ •๋ณด, ๋“ฑ๋“ฑ)
  • ํ†ต๊ณ„ ์ •๋ณด
  • ์–ด๋–ค ์ข…๋ฅ˜์˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š”์ง€ ํŒŒ์•… ๊ฐ€๋Šฅํ•˜๋‹ค.
  • ์š”์ฒญ์—์„œ ์‚ฌ์šฉ

Server (์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ORIGIN ์„œ๋ฒ„์˜ ์†Œํ”„ํŠธ์›จ์–ด ์ •๋ณด)

  • Server : Apache/2.2.22(Debian)
  • server : nginx
  • ์‘๋‹ต์—์„œ ์‚ฌ์šฉ

Date (๋ฉ”์‹œ์ง€๊ฐ€ ๋ฐœ์ƒํ•œ ๋‚ ์งœ์™€ ์‹œ๊ฐ„)

  • Date : Tue, 15 Nov 1994 08:12:31 GMT
  • ์‘๋‹ต์—์„œ ์‚ฌ์šฉ

์ตœ์‹  ์ŠคํŽ™์—์„œ๋Š” ์‘๋‹ต์—์„œ๋งŒ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

๐Ÿ‘‰ ํŠน๋ณ„ํ•œ ์ •๋ณด

Host - ์š”์ฒญํ•œ ํ˜ธ์ŠคํŠธ ์ •๋ณด(๋„๋ฉ”์ธ) โœจ์ •๋ง ์ค‘์š”!

  • ์š”์ฒญ์—์„œ ์‚ฌ์šฉ

  • ํ•„์ˆ˜

  • ํ•˜๋‚˜์˜ ์„œ๋ฒ„๊ฐ€ ์—ฌ๋Ÿฌ ๋„๋ฉ”์ธ์„ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ๋•Œ

  • ํ•˜๋‚˜์˜ IP ์ฃผ์†Œ์— ์—ฌ๋Ÿฌ ๋„๋ฉ”์ธ์ด ์ ์šฉ๋˜์–ด ์žˆ์„ ๋•Œ

    ๊ฐ€์ƒํ˜ธ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์—ฌ๋Ÿฌ ๋„๋ฉ”์ธ์„ ํ•œ๋ฒˆ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋ฒ„ ์‹ค์ œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์—ฌ๋Ÿฌ๊ฐœ ๊ตฌ๋™๋  ์ˆ˜ ์žˆ๋‹ค. (IP: 200.200.200.2)

    ํด์•„์ด์–ธํŠธ ์ชฝ์—์„œ /hello๊ฐ€ aaa.com์— ๋“ค์–ด๊ฐˆ์ง€ bbb.com์— ๋“ค์–ด๊ฐˆ์ง€ ccc.com์— ๋“ค์–ด๊ฐˆ์ง€ ๊ตฌ๋ถ„ํ•  ๋ฐฉ๋ฒ•์ด ์—†๋‹ค.

๊ทธ๋ž˜์„œ ๋„๋ฉ”์ธ์— Host ํ—ค๋” ํ•„๋”๋ฅผ ๋„ฃ์–ด์„œ ์„œ๋ฒ„์— ์ „๋‹ฌ์„ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ โœจHOST๋Š” ํ•„์ˆ˜์ด๋‹ค.โœจ

Location (ํŽ˜์ด์ง€ ๋ฆฌ๋‹ค์ด๋ ‰์…˜)

  • ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” 3xx ์‘๋‹ต์˜ ๊ฒฐ๊ณผ์— Location ํ—ค๋”๊ฐ€ ์žˆ์œผ๋ฉด, Location ์œ„์น˜๋กœ ์ž๋™ ์ด๋™(๋ฆฌ๋‹ค์ด๋ ‰ํŠธ)
  • ์‘๋‹ต์ฝ”๋“œ 3xx์—์„œ ์„ค๋ช…
  • 201(Created) : Location ๊ฐ’์€ ์š”์ฒญ์— ์˜ํ•ด ์ƒ์„ฑ๋œ ๋ฆฌ์†Œ์Šค URI
  • 3xx(Redirection) : Location ๊ฐ’์€ ์š”์ฒญ์„ ์ž๋™์œผ๋กœ ๋ฆฌ๋””๋ ‰์…˜ํ•˜๊ธฐ ์œ„ํ•œ ๋Œ€์ƒ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€๋ฅดํ‚จ๋‹ค.

Allow (ํ—ˆ์šฉ ๊ฐ€๋Šฅํ•œ HTTP ๋ฉ”์„œ๋“œ)

  • 405(Method Not Allowed)์—์„œ ์‘๋‹ต์— ํฌํ•จํ•ด์•ผํ•จ
  • Allow: GET, HEAD, PUT

POST๋Š” ์ œ๊ณต์„ ์•ˆํ•œ๋‹ค. ์‚ฌ์‹ค ์ด๊ฒƒ์€ ์„œ๋ฒ„์—์„œ ๋งŽ์ด ๊ตฌํ˜„๋˜์ง€ ์•Š๋Š”๋‹ค. ์ฐธ๊ณ ๋งŒ ํ•˜์‹œ๊ธธ!

Retry-After (์œ ์ € ์—์ด์ „ํŠธ๊ฐ€ ๋‹ค์Œ ์š”์ฒญ์„ ํ•˜๊ธฐ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ค์•ผ ํ•˜๋Š” ์‹œ๊ฐ„)

  • 503(Service Unavailable) : ์„œ๋น„์Šค๊ฐ€ ์–ธ์ œ๊นŒ์ง€ ๋ถˆ๋Šฅ์ธ์ง€ ์•Œ๋ ค์ค„ ์ˆ˜ ์žˆ๋‹ค
  • Retry-After: Fri, 31 Dec 1999 23:59:59 GMT (๋‚ ์งœํ‘œ๊ธฐ)
  • Retry-After: 120 (์ดˆ๋‹จ์œ„ ํ‘œ๊ธฐ)

๐Ÿ‘‰ ์ธ์ฆ

  • Authorization : ํด๋ผ์ด์–ธํŠธ ์ธ์ฆ ์ •๋ณด๋ฅผ ์„œ๋ฒ„์— ์ „๋‹ฌ
  • WWW-Authenticate : ๋ฆฌ์†Œ์Šค ์ ‘๊ทผ์‹œ ํ•„์š”ํ•œ ์ธ์ฆ ๋ฐฉ๋ฒ• ์ •์˜

Authorization (ํด๋ผ์ด์–ธํŠธ ์ธ์ฆ ์ •๋ณด๋ฅผ ์„œ๋ฒ„์— ์ „๋‹ฌ)

  • Authorization: Basic xxxxxxxxxxxxx

WWW-Authenticate (๋ฆฌ์†Œ์Šค ์ ‘๊ทผ์‹œ ํ•„์š”ํ•œ ์ธ์ฆ ๋ฐฉ๋ฒ• ์ •์˜)

  • ๋ฆฌ์†Œ์Šค ์ ‘๊ทผ์‹œ ํ•„์š”ํ•œ ์ธ์ฆ ๋ฐฉ๋ฒ• ์ •์˜
  • 401 Unauthorized ์‘๋‹ต๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ
  • WWW-Authenticate : Newauth realm="apps", type=1, title="Login to \"apps\"", Basic realm="simple"

๐Ÿ‘‰ ์ฟ ํ‚ค

  • Set-Cookie : ์„œ๋ฒ„์—์„œ ํด๋ผ์ด์–ธํŠธ๋กœ ์ฟ ํ‚ค ์ „๋‹ฌ (์‘๋‹ต)
  • Cookie : ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—์„œ ๋ฐ›์€ ์ฟ ํ‚ค๋ฅผ ์ €์žฅํ•˜๊ณ , HTTP ์š”์ฒญ์‹œ ์„œ๋ฒ„๋กœ ์ „๋‹ฌ

๋กœ๊ทธ์ธ ์™„๋ฃŒํ›„, ๋กœ๊ทธ์ธ ์ดํ›„ welcome ํŽ˜์ด์ง€์— ์ ‘๊ทผ์„ ํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ ์ชฝ์ธ ์›น๋ธŒ๋ผ์šฐ์ €์—์„œ๋Š” "์•ˆ๋…•ํ•˜์„ธ์š” ํ™๊ธธ๋™๋‹˜" ์„ ์›ํ–ˆ๋Š”๋ฐ ๋ง‰์ƒ ์„œ๋ฒ„์ชฝ์—์„œ๋Š” "์•ˆ๋…•ํ•˜์„ธ์š”. ์†๋‹˜" ์ด๋ผ๋Š” ๋ฌธ๊ตฌ๋กœ ๋งž์ดํ•ด์ค€๋‹ค.

Stateless

  • HTTP๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฌด์ƒํƒœ(Stateless) ํ”„๋กœํ† ์ฝœ์ด๋‹ค
  • ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ๊ณผ ์‘๋‹ต์„ ์ฃผ๊ณ  ๋ฐ›์œผ๋ฉด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง„๋‹ค. (์„œ๋กœ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜์ง€ ์•Š๋Š”๋‹ค)
  • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋‹ค์‹œ ์š”์ฒญํ•˜๋ฉด ์„œ๋ฒ„๋Š” ์ด์ „ ์š”์ฒญ์„ ๊ธฐ์–ตํ•˜์ง€ ๋ชปํ•œ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„๋Š” ์„œ๋กœ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์€ ๋ชจ๋“  ์š”์ฒญ์— ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํฌํ•จํ•˜์—ฌ ๋ณด๋‚ด๋ฉด ๋œ๋‹ค.

์œ ์ € ์ •๋ณด๋ฅผ ๊ณ„์† ์„œ๋ฒ„์— ์ฃผ๋ฉด ์„œ๋ฒ„๋Š” ๊ทธ๊ฑธ ๋ฐ›์•„ ์•ˆ๋…•ํ•˜์„ธ์š” ํ™๊ธธ๋™๋‹˜ ์ด๋ผ๋Š” ๋ฌธ๊ตฌ๋ฅผ ์‘๋‹ตํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿด ๊ฒฝ์šฐ์—๋„ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธด๋‹ค


๋ชจ๋“  ์š”์ฒญ๊ณผ ๋งํฌ์— ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํฌํ•จํ•ด์•ผํ•œ๋‹ค. ๊ทธ๋Ÿผ ๊ฐœ๋ฐœ์ž๋„ ํž˜๋“ค๊ณ  ์ƒ๋‹นํžˆ ๊ณจ์น˜์•„ํŒŒ์ง„๋‹ค.

๋ชจ๋“  ์š”์ฒญ์— ์ •๋ณด๋ฅผ ๋„˜๊ธฐ๋Š” ๋ฌธ์ œ

  • ๋ชจ๋“  ์š”์ฒญ์— ์‚ฌ์šฉ์ž ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜๋„๋ก ๊ฐœ๋ฐœ ํ•ด์•ผํ•œ๋‹ค (๊ฐœ๋ฐœ์ž๊ฐ€ ํž˜๋“ฌ)
  • ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์™„์ „ํžˆ ์ข…๋ฃŒํ•˜๊ณ  ๋‹ค์‹œ ์—ด๋ฉด ? (์›น์Šคํ† ๋ฆฌ์ง€์— ์ €์žฅํ•ด์„œ ๋‹ค์‹œ ๋„˜๊ธฐ๋ฉด ๋˜๋Š”๋ฐ ์ด๊ฒƒ ๋˜ํ•œ ๊ฐœ๋ฐœ์ž๊ฐ€ ํž˜๋“ค์–ด์ง„๋‹ค.)

๊ทธ๋ž˜์„œ ์ด๋Ÿฐ ๊ฒƒ๋“ค์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋‚˜ํƒ€๋‚œ๊ฒŒ ๐Ÿช์ฟ ํ‚ค๐Ÿช์ด๋‹ค.

์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ™๊ธธ๋™์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ๋กœ๊ทธ์ธ์„ ํ•˜๋ฉด ์„œ๋ฒ„๋Š” SET-Cookie๋ผ๊ณ  ํ•ด์„œ ์œ ์ €๋Š” ํ™๊ธธ๋™์ด๋ผ๊ณ  ํ•ด์„œ ์ฟ ํ‚ค๋ผ๋Š” ๊ณณ์—๋‹ค๊ฐ€ ๋„ฃ๋Š”๋‹ค. ์ด ํ—ค๋”๋ฅผ ๋งŒ๋“ค์–ด์„œ ์‘๋‹ต์„ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์›น ๋ธŒ๋ผ์šฐ์ € ๋‚ด๋ถ€์—๋Š” ์ฟ ํ‚ค ์ €์žฅ์†Œ์— user=ํ™๊ธธ๋™์„ ์ €์žฅํ•ด๋‘”๋‹ค.


๋กœ๊ทธ์ธ ์ดํ›„์— ์ด์ œ ์›ฐ์ปด ํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ€๊ฒŒ ๋˜๋ฉด ์ฟ ํ‚ค์ €์žฅ์†Œ์— ๋‹ด๊ธด ํ™๊ธธ๋™์„ ์ฐพ์•„์„œ ์„œ๋ฒ„์— ๋ณด๋‚ธ๋‹ค. ๊ทธ๋Ÿผ ์„œ๋ฒ„๋Š” user๋Š” ํ™๊ธธ๋™์ด๋„ค ํ•˜๊ณ  ์•Œ์•„๋จน๊ณ  ์›ฐ์ปด ํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐˆ ๋•Œ๋งˆ๋‹ค "์•ˆ๋…•ํ•˜์„ธ์š” ํ™๊ธธ๋™๋‹˜" ์ด๋ผ๊ณ  ๋œฌ๋‹ค.

์ด๋ ‡๊ฒŒ ์ฟ ํ‚ค ์ €์žฅ์†Œ์— ํ™๊ธธ๋™์„ ๋„ฃ์–ด๋‘  ! ํ•˜์ง€๋งŒ ์ด๊ฒŒ ๋ณด์•ˆ์— ์ทจ์•ฝํ•  ์ˆ˜๋„ ์žˆ๋‹ค. ๊ทผ๋ฐ ์ด๋Ÿฐ ์ ์„ ๋Œ€์•ˆํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋˜ ์žˆ์Œ ๐Ÿ‘

  • ์˜ˆ) set-sookie : sessionId=abcde1234; expires=Sat, 26-Dec-2020 00:00:00 GMT; path=/; domain=google.com; Secure

  • ์‚ฌ์šฉ์ฒ˜
    -
    - ์‚ฌ์šฉ์ž ๋กœ๊ทธ์ธ ์„ธ์…˜ ๊ด€๋ฆฌ

    • ๊ด‘๊ณ  ์ •๋ณด ํŠธ๋ž˜ํ‚น


  • ์ฟ ํ‚ค ์ •๋ณด๋Š” ํ•ญ์ƒ ์„œ๋ฒ„์— ์ „์†ก๋จ
    -

    • ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์ถ”๊ฐ€ ์œ ๋ฐœ
    • ์ตœ์†Œํ•œ์˜ ์ •๋ณด๋งŒ ์‚ฌ์šฉ (์„ธ์…˜ ์•„์ด๋””, ์ธ์ฆ ํ† ํฐ)
    • ์„œ๋ฒ„์— ์ „์†กํ•˜์ง€ ์•Š๊ณ , ์›น ๋ธŒ๋ผ์šฐ์ € ๋‚ด๋ถ€์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์‹ถ์œผ๋ฉด ๐Ÿ‘‰ ์›น ์Šคํ† ๋ฆฌ์ง€ ์ฐธ๊ณ 
  • ๐ŸŽˆ ์ฃผ์˜ ๐ŸŽˆ
    - ๋ณด์•ˆ์— ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋Š” ์ €์žฅํ•˜๋ฉด ์•ˆ๋œ๋‹ค. (์ฃผ๋ฏผ๋ฒˆํ˜ธ, ์‹ ์šฉ์นด๋“œ ๋ฒˆํ˜ธ ๋“ฑ๋“ฑ)

์ฟ ํ‚ค - ์ƒ๋ช…์ฃผ๊ธฐ

์ฟ ํ‚ค๋ฅผ ๋ฌด์ œํ•œ์œผ๋กœ ๋ณด๊ด€ํ•  ์ˆ˜๋Š” ์—†์œผ๋‹ˆ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ์ฃผ๋ฉด ๋œ๋‹ค.

  • Set-Cookie: expires=Sat, 26-Dec-202 04:39:21 GMT ๐Ÿ‘‰(๊ธฐ๊ฐ„)
    - ๋งŒ๋ฃŒ์ผ ๋˜๋ฉด ์ฟ ํ‚ค ์‚ญ์ œ

  • Set-Cookie: max-age=3600 (3600์ดˆ) ๐Ÿ‘‰(์‹œ๊ฐ„)
    - 0์ด๋‚˜ ์Œ์ˆ˜๋ฅผ ์ง€์ •ํ•˜๋ฉด ์ฟ ํ‚ค ์‚ญ์ œ

  • ์„ธ์…˜ ์ฟ ํ‚ค : ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ์ƒ๋žตํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ € ์ข…๋ฃŒ์‹œ ๊นŒ์ง€๋งŒ ์œ ์ง€
    - ์›น ๋ธŒ๋ผ์šฐ์ € ์™„์ „ํžˆ ์ข…๋ฃŒํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ํ‚ค๋ฉด ๋‹ค์‹œ ๋กœ๊ทธ์ธ ํ•ด์•ผ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์„ธ์…˜์ฟ ํ‚ค๋‹ค.

  • ์˜์† ์ฟ ํ‚ค : ๋งŒ๋ฃŒ ๋‚ ์งœ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ํ•ด๋‹น ๋‚ ์งœ๊นŒ์ง€ ์œ ์ง€

์ฟ ํ‚ค - ๋„๋ฉ”์ธ

  • ์˜ˆ) domain=example.org
  • 1. ๋ช…์‹œ : ๋ช…์‹œํ•œ ๋ฌธ์„œ ๊ธฐ์ค€ ๋„๋ฉ”์ธ + ์„œ๋ธŒ ๋„๋ฉ”์ธ ํฌํ•จ
    - domain=example.org๋ฅผ ์ง€์ •ํ•ด์„œ ์ฟ ํ‚ค ์ƒ์„ฑ
    - example.org๋Š” ๋ฌผ๋ก ์ด๊ณ 
    • dev.example.org๋„ ์ฟ ํ‚ค์ ‘๊ทผ


  • 2. ์ƒ๋žต : ํ˜„์žฌ ๋ฌธ์„œ ๊ธฐ์ค€ ๋„๋ฉ”์ธ๋งŒ ์ ์šฉ
    - example.org์—์„œ ์ฟ ํ‚ค๋ฅผ ์ƒ์„ฑํ•˜๊ณ  domain ์ง€์ •์„ ์ƒ๋žต
    • example.org์—์„œ๋งŒ ์ฟ ํ‚ค ์ ‘๊ทผ
    • dev.example.org๋Š” ์ฟ ํ‚ค ๋ฏธ์ ‘๊ทผ

์ฟ ํ‚ค - ๊ฒฝ๋กœ (path)

  • ์˜ˆ) path=/home
  • ์ด ๊ฒฝ๋กœ๋ฅผ ํฌํ•จํ•œ ํ•˜์œ„ ๊ฒฝ๋กœ ํŽ˜์ด์ง€๋งŒ ์ฟ ํ‚ค ์ ‘๊ทผ
  • ์ผ๋ฐ˜์ ์œผ๋กœ path=/ ๋ฃจํŠธ๋กœ ์ง€์ •
  • ์˜ˆ)
    - path=/home ์ง€์ •
    • /home (์ ‘๊ทผ๊ฐ€๋Šฅ)
    • /home/level1 (์ ‘๊ทผ๊ฐ€๋Šฅ)
    • /home/level1/level2 (์ ‘๊ทผ๊ฐ€๋Šฅ)
    • /hello (๋ถˆ๊ฐ€๋Šฅ) path๋ฅผ home์œผ๋กœ ์ง€์ •ํ–ˆ๋Š”๋ฐ ์Œฉ๋šฑ๋งž๊ฒŒ hello๋กœ ํ•˜๋ฉด ๋ ˆ๋ฒจ์ด ์•ˆ๋งž์•„์„œ ์ฟ ํ‚ค ์ „๋‹ฌ์ด ์•ˆ๋œ๋‹ค.

์ฟ ํ‚ค - ๋ณด์•ˆ

  • Secure
    - ์ฟ ํ‚ค๋Š” http, https๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๊ณ  ์ „์†ก (์›๋ž˜ ์ฟ ํ‚ค๋Š” HTTP, HTTPS๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ณ  ์ „์†กํ•œ๋‹ค)
    • Secure๋ฅผ ์ ์šฉํ•˜๋ฉด https์ธ ๊ฒฝ์šฐ์—๋งŒ ์ „์†ก
  • HttpOnly
    - XSS ๊ณต๊ฒฉ๋ฐฉ์ง€
    • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์ ‘๊ทผ ๋ถˆ๊ฐ€
      - HTTP ์ „์†ก์—๋งŒ ์‚ฌ์šฉ
  • SameStie
    - XSRF ๊ณต๊ฒฉ ๋ฐฉ์ง€
    • ์š”์ฒญ ๋„๋ฉ”์ธ๊ณผ ์ฟ ํ‚ค์— ์„ค์ •๋œ ๋„๋ฉ”์ธ์ด ๊ฐ™์€ ๊ฒฝ์šฐ๋งŒ ์ฟ ํ‚ค ์ „์†ก
profile
์•„๋Š‘ํ•œ ๋‡Œ๊ณต๊ฐ„ ๐Ÿง 

0๊ฐœ์˜ ๋Œ“๊ธ€