[HTTP] 2. URI์™€ ์›น ๋ธŒ๋ผ์šฐ์ € ์š”์ฒญ ํ๋ฆ„

2025. 2. 28. 22:16ยทSTUDY๐Ÿ„

์•ˆ๋…•ํ•˜์„ธ์š”!

๋˜ ์ธํ”„๋Ÿฐ ๊น€์˜ํ•œ ๊ฐ•์‚ฌ๋‹˜ ๊ฐ•์˜๋ฅผ ๋ณด๊ณ  ๊ณต๋ถ€ ์ •๋ฆฌ ์‹œ์ž‘ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ณ ๊ณ !!


1. URI (Uniform Resource Identifier)

1-1. URI  ๊ฐ„๋žตํ•œ ์„ค๋ช…

 ๋จผ์ €, ๊ฐ„๋‹จํ•˜๊ฒŒ URI์— ๋Œ€ํ•ด์„œ ์„ค๋ช…ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

URI๋ž€ ๋ง ๊ทธ๋Œ€๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ํ†ตํ•ฉ๋œ ๋ฐฉ๋ฒ•์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.

 

URI๋Š” ๋กœ์ผ€์ดํ„ฐ(locator), ์ด๋ฆ„(name) ๋˜๋Š” ๋‘˜ ๋‹ค ์ถ”๊ฐ€๋กœ ๋ถ„๋ฅ˜๋  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ด๊ฑด ๊ทธ๋ฆผ์œผ๋กœ ํ•œ๋ฒˆ ๋ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

URI

URI๋ผ๋Š” ํฐ ๊ฐœ๋… ์•ˆ์— ์žˆ๋Š” URL๊ณผ URN์€ ๋ญ˜๊นŒ์š”?

URL์€ ๋กœ์ผ€์ดํ„ฐ! ์ฆ‰, ๋ฆฌ์†Œ์Šค์˜ ์œ„์น˜๋ฅผ ๋œปํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ , URN์€ ๋ฆฌ์†Œ์Šค์˜ ์ด๋ฆ„์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ, ์ œ๊ฐ€ URL์—๋งŒ ํ˜•๊ด‘ํŽœ ํ‘œ์‹œ ํ•ด๋†“๊ณ  URN์€ ๊ทธ๋ƒฅ ๋†”๋‘” ์ด์œ ๊ฐ€ ๋ญ˜๊นŒ์š”?

URN์€ ์‚ฌ์‹ค ์ด๋ฆ„๋งŒ์œผ๋กœ๋Š” ๊ทธ ์ •๋ณด๋ฅผ ์ฐพ๋Š”๊ฒŒ ์–ด๋ ค์›Œ์„œ ๊ฑฐ์˜ ์•ˆ ์”๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ทธ๋ƒฅ ์ด๋Ÿฐ๊ฒŒ ์žˆ๊ตฌ๋‚˜.. ์ •๋„๋งŒ ์•Œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๋Œ€๋ถ€๋ถ„์€ URL๋กœ ์‚ฌ์šฉ์„ ํ•˜๊ณ , ์•ž์œผ๋กœ URI์™€ URL์„ ๊ฐ™์€ ์˜๋ฏธ๋กœ ๋ณด๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

๊ตฌ์ฒด์ ์œผ๋กœ URI์™€ URL, URN์„ ์ •๋ฆฌํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

1-2. URI (Uniform Resource Identifier) ๋œป

  • Uniform: ๋ฆฌ์†Œ์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ํ†ต์ผ๋œ ๋ฐฉ์‹
  • Resource: ์ž์›, URI๋กœ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒƒ(์ œํ•œX)
    • ์—ฌ๊ธฐ์„œ ์ž์›์€ ์›น๋ธŒ๋ผ์šฐ์ € ํŒŒ์ผ ๊ฐ™์€ ๊ฒƒ๋งŒ์ด ์•„๋‹ˆ๋ผ ์‹ค์‹œ๊ฐ„ ๊ตํ†ต ์ •๋ณด ๊ฐ™์€ ์šฐ๋ฆฌ๊ฐ€ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๊ฒƒ์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.
  • Identifier: ๋‹ค๋ฅธ ํ•ญ๋ชฉ๊ณผ ๊ตฌ๋ถ„(์‹๋ณ„)ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์ •๋ณด

 

1-3. URL (Uniform Resource Locator), URN (Uniform Resource Name) ๋œป

  • URL - Locator: ๋ฆฌ์†Œ์Šค๊ฐ€ ์žˆ๋Š” ์œ„์น˜๋ฅผ ์ง€์ •
    • ์˜ˆ์‹œ) foo://example.com:8042/over/there?/name=ferret#nose
  • URN - Name: ๋ฆฌ์†Œ์Šค์— ์ด๋ฆ„์„ ๋ถ€์—ฌ
    • ์˜ˆ์‹œ) urn:example:animal:ferret:nose
    • ์˜ˆ์‹œ) urn:isbn:8960777331 (์–ด๋–ค ์ฑ…์˜ isbn URN)
    • ์—ฌ๊ธฐ๋กœ ๋“ค์–ด๊ฐ„๋‹ค๊ณ  ํ•ด์„œ ์ฑ…์ด ๋”ฑ ๋‚˜์™€์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (URN์˜ ํ•œ๊ณ„)
    • URN ์ด๋ฆ„๋งŒ์œผ๋กœ ์‹ค์ œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ๋ณดํŽธํ™” ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
  • ์œ„์น˜๋Š” ๋ณ€ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ด๋ฆ„์€ ๋ณ€ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ex) ์ญ์˜ ์ง‘ =>URN์€ ์ญ, URL์€ ์ง‘

 

1-4. URL ๋ถ„์„ ๋ฐ ์ „์ฒด ๋ฌธ๋ฒ•

URL ์ „์ฒด ๋ฌธ๋ฒ•

 

1-4(1). URL=> scheme

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ https์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • ์ฃผ๋กœ ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœํ† ์ฝœ์ด๋ž€?

์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ž์›์— ์ ‘๊ทผํ•  ๊ฒƒ์ธ๊ฐ€ ํ•˜๋Š” ์•ฝ์† ๊ทœ์น™
ex) http, https, ftp ๋“ฑ
  • http๋Š” 80 ํฌํŠธ, https๋Š” 443 ํฌํŠธ๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๊ณ , ์ด ๋‘ ํฌํŠธ๋Š” ์ƒ๋žต ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • https๋Š” http์— ๊ฐ•๋ ฅํ•œ ๋ณด์•ˆ์„ ์ถ”๊ฐ€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. (HTTP Secure)

 

1-4(2). URL=> userinfo

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ [userinfo@] ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • URL์— ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ํฌํ•จํ•ด์„œ ์ธ์ฆํ•˜๋Š” ๋ถ€๋ถ„์ด๊ณ , ๊ฑฐ์˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (์˜ˆ์‹œ์— ์—†๋Š” ์ด์œ )

 

1-4(3). URL=> host

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ www.google.com์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. 
  • ํ˜ธ์ŠคํŠธ๋ช…์ด๊ณ , ๋„๋ฉ”์ธ๋ช… ๋˜๋Š” IP ์ฃผ์†Œ๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

1-4(4). URL=> PORT

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ 443์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • ์ ‘์† ํฌํŠธ์ด๊ณ , ์ผ๋ฐ˜์ ์œผ๋กœ ์ƒ๋žตํ•˜๋ฉฐ, ์ƒ๋žต ์‹œ์— http๋Š” 80์ด๊ณ  https๋Š” 443 ์ž…๋‹ˆ๋‹ค.
    • ํŠน์ • ์„œ๋ฒ„์— ๋”ฐ๋กœ ์ ‘์†ํ•  ๋•Œ์—๋Š” PORT ๋ฒˆํ˜ธ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

1-4(5). URL=> path

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ search์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • ๋ฆฌ์†Œ์Šค ๊ฒฝ๋กœ(path)์ด๋ฉฐ, ๊ณ„์ธต์  ๊ตฌ์กฐ์ž…๋‹ˆ๋‹ค.
์™œ ๊ณ„์ธต์  ๊ตฌ์กฐ์ผ๊นŒ?

๊ณ„์ธต์  ๊ตฌ์กฐ๋กœ ๋˜์–ด์žˆ์–ด์•ผ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ณ , ์ฐพ๊ธฐ๋„ ์‰ฌ์›Œ์ง€๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
ex) /home/file1.jpg => home์•ˆ์˜ file1.jpg
      /items/iphone12
      /members
      /members/100 => members๋ผ๋Š” ๋””๋ ‰ํ† ๋ฆฌ ์•ˆ์— id๊ฐ€ 100๋ฒˆ์ธ ์‚ฌ๋žŒ
๋Œ€์ถฉ ์š”๋Ÿฐ ๋А๋‚Œ..?

 

 

1-4(6). URL=> query

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ ?q=hello&hl=ko์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • key=value ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.
  • ?๋กœ ์‹œ์ž‘ํ•˜๊ณ , &๋กœ ์ถ”๊ฐ€๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
    • ?keyA=valueA&keyB=valueB
  • query parameter (์›น์„œ๋ฒ„์— ์ œ๊ณตํ•˜๋Š” ํŒŒ๋ผ๋ฏธํ„ฐ), query string (๋ฌธ์ž ํ˜•ํƒœ) ๋“ฑ์œผ๋กœ ๋ถˆ๋ฆฝ๋‹ˆ๋‹ค.

 

1-4(7). URL=> fragment

  • ์œ„์˜ ๊ทธ๋ฆผ์—์„œ [#fragment]์— ํ•ด๋‹นํ•˜๋Š” ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค.
  • ex)https://~~~/~~#getting-started-introducing-spring-boot
  • html ๋‚ด๋ถ€ ๋ถ๋งˆํฌ ๋“ฑ์— ์‚ฌ์šฉํ•˜๊ณ , ์„œ๋ฒ„์— ์ „์†กํ•˜๋Š” ์ •๋ณด๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.
  • ์ž˜ ์‚ฌ์šฉํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.

2. ์›น ๋ธŒ๋ผ์šฐ์ € ์š”์ฒญ ํ๋ฆ„

์›น ๋ธŒ๋ผ์šฐ์ € ์š”์ฒญ ํ๋ฆ„

1. ๊ตฌ๊ธ€ DNS ์กฐํšŒํ•ด์„œ IP๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค.

2. ๊ฑฐ๊ธฐ์„œ ๋‚˜์˜จ PORT ๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•ด HTTP ์š”์ฒญ ๋ฉ”์‹œ์ง€๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

 

<HTTP ์š”์ฒญ ๋ฉ”์‹œ์ง€ ์˜ˆ์‹œ>

GET /search?q=hello&hl=ko HTTP/1.1 (๋ฒ„์ „ ์ •๋ณด)
Host: www.google.com (ํ˜ธ์ŠคํŠธ ์ •๋ณด)

 

 

2-1. HTTP ๋ฉ”์‹œ์ง€ ์ „์†ก

 

 

1. ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ HTTP ๋ฉ”์‹œ์ง€๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

2. SOCKET ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

 -A: TCP/IP ์—ฐ๊ฒฐ(IP, PORT)

 -B: ๋ฐ์ดํ„ฐ ์ „๋‹ฌ

3. TCP/IP ํŒจํ‚ท ์ƒ์„ฑํ•˜๊ณ , HTTP ๋ฉ”์‹œ์ง€ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

 

2-1(1). ํŒจํ‚ท ์ƒ์„ฑ

 

2-1(2). HTTP ์š”์ฒญ ๊ณผ์ •

HTTP ์š”์ฒญ ๊ณผ์ •๊ณผ ์‘๋‹ต ๊ณผ์ •์€ ๊ทธ๋ฆผ์œผ๋กœ ๋ณด๋Š”๊ฒŒ ์ดํ•ด๊ฐ€ ๋” ๋นจ๋ผ์„œ ๊ทธ๋ฆผ์œผ๋กœ๋งŒ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

1. ์š”์ฒญ ํŒจํ‚ท ์ „๋‹ฌ

์š”์ฒญ ํŒจํ‚ท ์ „๋‹ฌ

 

2. ์š”์ฒญ ํŒจํ‚ท ๋„์ฐฉ

์š”์ฒญ ํŒจํ‚ท ๋„์ฐฉ

 

<HTTP ์‘๋‹ต ๋ฉ”์‹œ์ง€>

 

2-1(3). HTTP ์‘๋‹ต ๊ณผ์ •

 

1. ์‘๋‹ต ํŒจํ‚ท ์ „๋‹ฌ

์‘๋‹ต ํŒจํ‚ท ์ „๋‹ฌ

 

2. ์‘๋‹ต ํŒจํ‚ท ๋„์ฐฉ

์‘๋‹ต ํŒจํ‚ท ๋„์ฐฉ

 

3. ์ตœ์ข…!! ์›น ๋ธŒ๋ผ์šฐ์ € HTML ๋ Œ๋”๋ง!!

์›น ๋ธŒ๋ผ์šฐ์ € HTML ๋ Œ๋”๋ง

'STUDY๐Ÿ„' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[HTTP] 6. HTTP ์ƒํƒœ ์ฝ”๋“œ  (0) 2025.03.06
[HTTP] 5. HTTP ๋ฉ”์„œ๋“œ ํ™œ์šฉ  (0) 2025.03.03
[HTTP] 4. HTTP ๋ฉ”์„œ๋“œ  (0) 2025.03.02
[HTTP] 3. HTTP ๊ธฐ๋ณธ  (2) 2025.02.28
[HTTP] 1. ์ธํ„ฐ๋„ท ๋„คํŠธ์›Œํฌ(internet-network)  (0) 2025.02.27
'STUDY๐Ÿ„' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [HTTP] 5. HTTP ๋ฉ”์„œ๋“œ ํ™œ์šฉ
  • [HTTP] 4. HTTP ๋ฉ”์„œ๋“œ
  • [HTTP] 3. HTTP ๊ธฐ๋ณธ
  • [HTTP] 1. ์ธํ„ฐ๋„ท ๋„คํŠธ์›Œํฌ(internet-network)
์ด๋ฆฌ์ญ
์ด๋ฆฌ์ญ
ํ”„๋กœ์ ํŠธ ์ •๋ฆฌ, ๊ณต๋ถ€ ์ •๋ฆฌ ๋“ฑ๋“ฑ ํ•ฉ๋‹ˆ๋‹น๐Ÿถ / ๊นƒํ—ˆ๋ธŒ id: ssarisong
  • ์ด๋ฆฌ์ญ
    ๐Ÿ„DEV์ญ๐Ÿ„
    ์ด๋ฆฌ์ญ
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (18)
      • PROJECT๐Ÿ’ป (3)
      • STUDY๐Ÿ„ (15)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    Java
    filtertype
    ์‹ฑ๊ธ€ํ†ค ์ฃผ์˜์ 
    ๊ฐ„๋‹จํ•œ ๊ฐœ๋ฐœ
    spring
    ์Šคํ”„๋ง ์ปจํ…Œ์ด๋„ˆ
    TypeScript
    ์ˆ˜๋™ ๋นˆ ๋“ฑ๋ก vs ์ž๋™ ๋นˆ ๋“ฑ๋ก
    ํ•œ์„ฑ๋Œ€ ๊ธฐ์ˆ™์‚ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
    ์ค‘๊ณ ๋งˆ์ผ“ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
    ์‹ฑ๊ธ€ํ†ค
    ์Šคํ”„๋ง
    backend
    @Autowired
    ์บ์‹œ ๋ฌดํšจํ™”
    ์กฐํšŒ ๋นˆ์ด 2๊ฐœ ์ด์ƒ
    ์Šคํ”„๋ง ๋นˆ ์กฐํšŒ
    http
    ํ•œ์„ฑ๋Œ€ํ•™๊ต
    ํ•œ์„ฑ๋Œ€
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
์ด๋ฆฌ์ญ
[HTTP] 2. URI์™€ ์›น ๋ธŒ๋ผ์šฐ์ € ์š”์ฒญ ํ๋ฆ„
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”