URL + URN = URI ?

๊ถŒํƒœํ˜•ยท2023๋…„ 4์›” 7์ผ
0

์ง€์‹์ •๋ฆฌ

๋ชฉ๋ก ๋ณด๊ธฐ
54/72

๐Ÿ˜€์ด๋ฒˆ์— CORSํฌ์ŠคํŒ…์„ ์ •๋ฆฌํ•˜๋ฉด์„œ URL์˜ ๊ตฌ์กฐ์—์„œ Origin์„ ์ธ์šฉํ•˜๋Š”๋ฐ ์ „ ๋ถ€ํ„ฐ ์ž˜ ์•Œ์ง€ ๋ชปํ–ˆ๋˜ URL๊ณผURN, URI์˜ ์ž์„ธํ•œ ์ •์˜๋‚˜ ๊ฐœ๋…์„ ์ดํ•ดํ•˜๊ณ ์ž ์ด๋ฒˆ ํฌ์ŠคํŒ…์„ ์ •๋ฆฌํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค.

URL์ด๋ž€?

URL์€ Uniform Resource Locator์˜ ์•ฝ์ž๋กœ ๋„คํŠธ์›Œํฌ์ƒ์—์„œ ํ†ตํ•ฉ ์ž์›(Uniform Resource)์˜ ์œ„์น˜(Locator)๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•œ ๊ทœ์•ฝ์ด๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•ด์„œ, ์›น ํŽ˜์ด์ง€๋ฅผ ์ฐพ๊ธฐ์œ„ํ•œ ์ฃผ์†Œ๋ฅผ ๋งํ•œ๋‹ค. ํ”ํžˆ ์›น ์‚ฌ์ดํŠธ ์ฃผ์†Œ๋กœ ์•Œ๊ณ  ์žˆ์ง€๋งŒ, URL์€ ์›น ์‚ฌ์ดํŠธ ์ฃผ์†Œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ์ƒ์˜ ์ž์›์„ ๋ชจ๋‘ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ ์ฃผ์†Œ์— ์ ‘์†ํ•˜๋ ค๋ฉด ํ•ด๋‹น URL์— ๋งž๋Š” ํ”„๋กœํ† ์ฝœ์„ ์•Œ์•„์•ผ ํ•˜๊ณ , ๊ทธ์™€ ๋™์ผํ•œ ํ”„๋กœํ† ์ฝœ๋กœ ์ ‘์†ํ•ด์•ผ ํ•œ๋‹ค.

URL์˜ ๊ตฌ์กฐ

์ผ๋ฐ˜์ ์ธ URL์€ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง„๋‹ค.

scheme://<user>:<password>@<hostname>:<port>/<url-path>

  • scheme : ์‚ฌ์šฉํ•  ํ”„๋กœํ† ์ฝœ์„ ๋œปํ•˜๋ฉฐ ์›น์—์„œ๋Š” http ๋˜๋Š” https๋ฅผ ์‚ฌ์šฉ
  • user์™€ password : (์„œ๋ฒ„์— ์žˆ๋Š”) ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•œ ์‚ฌ์šฉ์ž์˜ ์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ
  • hostname๊ณผ port : ์ ‘๊ทผํ•  ๋Œ€์ƒ(์„œ๋ฒ„)์˜ ํ˜ธ์ŠคํŠธ๋ช…๊ณผ ํฌํŠธ๋ฒˆํ˜ธ
  • url-path : ์ ‘๊ทผํ•  ๋Œ€์ƒ(์„œ๋ฒ„)์˜ ๊ฒฝ๋กœ์— ๋Œ€ํ•œ ์ƒ์„ธ ์ •๋ณด

๐Ÿ˜€์ด๋ ‡๊ฒŒ ๊ตฌ์กฐ์ ์œผ๋กœ๋งŒ ๋ดค์„ ๋•Œ๋Š” ์šฐ๋ฆฌ๊ฐ€ ํ”ํžˆ ์•Œ๊ณ ์žˆ๋Š” ์›นํŽ˜์ด์ง€์˜ URL๊ณผ ๋‹ค๋ฅด๊ฒŒ ๋ณด์ธ๋‹ค.

์ด์œ ๋Š” ์•„๋ฌด๋ž˜๋„ <user>:<password>@๊ฐ€ ๋ณด์•ˆ์ƒ์˜ ์ด์œ ๋กœ ์ƒ๋žต๋˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ์›น ์‚ฌ์ดํŠธ์—์„œ๋Š” ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ URL์— ํฌํ•จ์‹œํ‚ค์ง€ ์•Š๋Š” ๋Œ€์‹ ์— ์‚ฌ์šฉ์ž ์ธ์ฆ ์ •๋ณด๋ฅผ ์ฟ ํ‚ค๋‚˜ ์„ธ์…˜, HTTP ๊ธฐ๋ณธ ์ธ์ฆ ๋“ฑ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•ด์„œ ์ „๋‹ฌํ•œ๋‹ค.

๐Ÿ˜€์ด๋Ÿฌํ•œ ์‚ฌ์šฉ์ž๋ช…๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ œ์™ธํ•˜๊ฒŒ๋œ URL์„ ๋ณด๋ฉด ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ณด์•˜์„ ๋•Œ ์ต์ˆ™ํ•œ URL์ด ๋‚˜์˜จ๋‹ค.

scheme://<hostname>:<port>/<url-path>
ex) http:// localhost : 3000 / posts

๐Ÿ˜€ํ•˜์ง€๋งŒ ์ด ๋˜ํ•œ ์ผ๋ฐ˜์‚ฌ์šฉ์ž์˜ ์ž…์žฅ์—์„œ๋Š” ์•Œ๊ธฐ ์–ด๋ ค์šด ๋ชจ์–‘์ด๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ํ”„๋กœ์ ํŠธ๋ฅผ ์™„์„ฑํ•˜๊ณ  ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์—์„œ ํ”„๋กœ์ ํŠธ ์„œ๋ฒ„์˜ host(hostname๊ณผ port)๋ฅผ domain์„ ๊ตฌ๋งคํ•˜์—ฌ ๋“ฑ๋กํ•˜๊ณ  ๋ฐฐํฌํ•˜๋ฉด ์ผ๋ฐ˜์ ์ธ ์‚ฌ์šฉ์ž๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ํ˜•ํƒœ์˜ URL์€ ์•„๋ž˜์™€ ๊ฐ™์€ ํ˜•์‹์„ ๊ฐ€์ง€๊ฒŒ ๋œ๋‹ค.

protocol:// domain / url-path
ex)https:// mail.naver.com / v2/folders/0/all


URN์ด๋ž€?

URN์€ Uniform Resource Name์˜ ์•ฝ์ž๋กœ ๋„คํŠธ์›Œํฌ์ƒ์—์„œ ํ†ตํ•ฉ ์ž์›(Uniform Resource)์˜ ์ด๋ฆ„(Name)๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•œ ๊ทœ์•ฝ์ด๋‹ค.

URN์€ ๋ฆฌ์†Œ์Šค์˜ ์œ„์น˜, ํ”„๋กœํ† ์ฝœ, ํ˜ธ์ŠคํŠธ ๋“ฑ๊ณผ๋Š” ์ƒ๊ด€์—†์ด ๊ฐ ์ž์›์— ๋ถ€์—ฌํ•œ ์ด๋ฆ„์„ ๋‚˜ํƒ€๋‚ธ๋‹ค.

์›น ๋ฌธ์„œ์˜ ๋ฌผ๋ฆฌ์ ์ธ ์œ„์น˜์™€ ์ƒ๊ด€์—†์ด ์›น ๋ฌธ์„œ ์ž์ฒด๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

์ด์ฒ˜๋Ÿผ ๊ฐœ๋ณ„ ์ž์›์— ์‹๋ณ„์ž๋ฅผ ๋ถ€์—ฌํ•˜๊ฒŒ ๋˜๋ฉด ํ•ด๋‹น ์ •๋ณด์— ๋Œ€ํ•œ URN์€ ์ผ์ •ํ•˜๊ฒŒ ์œ ์ง€๋˜๋ฉฐ ๋ฆฌ์†Œ์Šค์˜ ์œ„์น˜, ํ”„๋กœํ† ์ฝœ, ํ˜ธ์ŠคํŠธ์™€ ๊ด€๊ณ„์—†์ด ์œ„์น˜๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์›น ๋ฌธ์„œ๊ฐ€ ๋‹ค๋ฅธ ์›น ์„œ๋ฒ„๋กœ ์ด๋™ํ•˜๊ฑฐ๋‚˜ ์ฃผ์†Œ๊ฐ€ ๋ฐ”๋€Œ๋Š” ๋“ฑ ๋ฌผ๋ฆฌ์  ์œ„์น˜๊ฐ€ ๋ณ€๊ฒฝ๋˜๋”๋ผ๋„ ํ•ด๋‹น ๋ฌธ์„œ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

URN์˜ ๊ตฌ์กฐ

URN์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง„๋‹ค.

urn:<NID>:<NSS>
ex)urn:def://blue_laser

  • urn: URN์„ ๋‚˜ํƒ€๋‚ด๋Š” scheme ์ด๋ฆ„์ด๋‹ค.

  • NID (Namespace Identifier): URN์ด ์‚ฌ์šฉํ•˜๋Š” namespace์˜ ์‹๋ณ„์ž์ด๋‹ค. ์ด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์•ŒํŒŒ๋ฒณ๊ณผ ์ˆซ์ž๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.

  • NSS (Namespace-specific String): URN ๋‚ด์—์„œ ์œ ์ผํ•œ ์‹๋ณ„์ž์ด๋‹ค. Namespace์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง„๋‹ค.


URI๋ž€?

URI๋Š” Uniform Resource Identifier์˜ ์•ฝ์ž๋กœ ์ง์—ญํ•˜๋ฉด ํ†ตํ•ฉ ์ž์› ์‹๋ณ„์ž๋กœ ์ธํ„ฐ๋„ท ์ž์›์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ณ ์œ  ์‹๋ณ„์ž๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

์ฆ‰, URI๋Š” ์ธํ„ฐ๋„ท์ƒ์˜ ๋ฆฌ์†Œ์Šค โ€œ์ž์› ์ž์ฒดโ€๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๊ณ ์œ ํ•œ ๋ฌธ์ž์—ด ์‹œํ€€์Šค์ด๋‹ค.
์‰ฝ๊ฒŒ ์ƒ๊ฐํ•˜๋ฉด, URI์˜ I ๊ฐ€ Identifier๋กœ ์ธํ„ฐ๋„ท์— ์žˆ๋Š” ์ž๋ฃŒ์˜ ๊ณ ์œ  id๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ™„โ“URI๋Š” ์‹๋ณ„์ž๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด URL(์ฃผ์†Œ ์œ„์น˜์ •๋ณด)์ด๋‚˜ URN(์ด๋ฆ„)์€ ์‹๋ณ„์ž๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์„๊นŒ?

๋ฏธ๋ฆฌ ์ •๋‹ต์„ ๋ง์žํ•˜๋ฉด "๊ทธ๋ ‡๋‹ค"์ด๋‹ค.

๐Ÿ˜€๊ฐ„๋‹จํ•˜๊ฒŒ ์šฐ๋ฆฌ์ง‘์„ ์˜ˆ๋ฅผ ๋“ค์–ด๋ณด์ž.
์šฐ๋ฆฌ์ง‘์˜ ์ฃผ์†Œ ๋กœ ๋‹ค๋ฅธ์ง‘๊ณผ ์šฐ๋ฆฌ์ง‘์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์„๊นŒ? => ์žˆ๋‹ค.
์šฐ๋ฆฌ์ง‘์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ๋‹ค๋ฅธ์ง‘๊ณผ ์šฐ๋ฆฌ์ง‘์„ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์„๊นŒ? => ์žˆ๋‹ค.

์ด์ฒ˜๋Ÿผ URI๋ผ๋Š” ์‹๋ณ„์ž๋Š” URL๊ณผ URN์„ ๋ชจ๋‘ ํฌํ•จํ•  ์ˆ˜ ์žˆ๋‹ค.
URL์€ URI๊ฐ€ ๋  ์ˆ˜ ์žˆ๊ณ , URN ๋˜ํ•œ URI๊ฐ€ ๋  ์ˆ˜ ์žˆ๋‹ค.

URI์˜ ๊ตฌ์กฐ

URI๋Š” ๋‘ ๊ฐ€์ง€ ํ˜•ํƒœ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค. ์œ„์— ์„ค๋ช…ํ–ˆ๋˜ URL์˜ ๊ตฌ์กฐ or URN์˜ ๊ตฌ์กฐ ํ˜•ํƒœ๋ฅผ ๊ฐ€์ง„๋‹ค.

URL๊ณผ URN๊ณผ URI

URL(Uniform Resource Locator)URN(Uniform Resource Name)URI(Uniform Resource Identifier)
์ •์˜๋ฆฌ์†Œ์Šค์˜ ์œ„์น˜๋ฅผ ์‹๋ณ„๋ฆฌ์†Œ์Šค์˜ ์ด๋ฆ„์„ ์‹๋ณ„์ธํ„ฐ๋„ท์—์„œ ํŠน์ • ๋ฆฌ์†Œ์Šค๋ฅผ ์‹๋ณ„
๊ตฌ์„ฑ์š”์†Œํ”„๋กœํ† ์ฝœ, ํ˜ธ์ŠคํŠธ, ํฌํŠธ, ๊ฒฝ๋กœ, ์ฟผ๋ฆฌ, ํ”„๋ž˜๊ทธ๋จผํŠธ๊ณ ์ •๋˜์ง€ ์•Š์Œ(๋ฆฌ์†Œ์Šค์˜ ์ด๋ฆ„๋งŒ ์‹๋ณ„)URL + URN
์˜ˆ์‹œhttps://www.example.comurn:isbn:0-13-089572-Xhttps://www.example.com
urn:isbn:0-13-089572-X
์šฉ๋„์ธํ„ฐ๋„ท์—์„œ ๋ฆฌ์†Œ์Šค ์œ„์น˜๋ฅผ ์ฐพ์„ ๋•Œ ์‚ฌ์šฉ์ธํ„ฐ๋„ท์—์„œ ๋ฆฌ์†Œ์Šค ์ด๋ฆ„์„ ์ฐพ์„ ๋•Œ ์‚ฌ์šฉ์ธํ„ฐ๋„ท์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ํ•  ๋•Œ ์‚ฌ์šฉ
์‚ฌ์šฉ ์˜ˆ์‹œ์›น ๋ธŒ๋ผ์šฐ์ €, REST API ๋“ฑ์›น ๋ธŒ๋ผ์šฐ์ € ๋“ฑ์›น ๋ธŒ๋ผ์šฐ์ €, REST API ๋“ฑ

์ฐธ๊ณ ์ž๋ฃŒ(์ถœ์ฒ˜)
์œ„ํ‚ค๋ฐฑ๊ณผ ๊ฒ€์ƒ‰๊ฒฐ๊ณผ [URL]
beusable ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ์œ„ํ•œ ๊ธฐ์ดˆ, URL ์ดํ•ดํ•˜๊ธฐ
์ฐฐ์Šค์˜ ์•ˆ๋“œ๋กœ์ด๋“œ ํฌ์ŠคํŒ… URI๋ž‘ URL ์ฐจ์ด์ ์ด ๋ญ”๋ฐ?
ELANCER ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… URI์™€ URL, ์–ด๋–ค ์ฐจ์ด์ ์ด ์žˆ๋‚˜์š”?
ํ‹ฐ์Šคํ† ๋ฆฌ ์„œ์ƒํ˜ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… URI (Uniform Resource Identifier)

profile
22๋…„ 12์›” ๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•œ ์‹ ์ž… ๊ฐœ๋ฐœ์ž โ€˜๊ถŒํƒœํ˜•โ€™์ž…๋‹ˆ๋‹ค. ํฌ์ŠคํŒ… ํ•˜๋‚˜ํ•˜๋‚˜ ๋‚ด๊ฐ€ ๋‹ค์‹œ๋ณด๊ธฐ ์œ„ํ•ด ์“ฐ๋Š” ๊ฒƒ์ด์ง€๋งŒ, ๋‹ค๋ฅธ ๋ถ„๋“ค์—๊ฒŒ๋„ ๋„์›€์ด ๋˜์—ˆ์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. ๐Ÿ’ฏ์ปฌ๋ŸฌํฐํŠธ๊ฐ€ ์ž˜ ์•ˆ๋ณด์ด์‹ค ๊ฒฝ์šฐ ๐ŸŒ™๋‹คํฌ๋ชจ๋“œ๋ฅผ ์ด์šฉํ•ด์ฃผ์„ธ์š”.๐Ÿ˜€ ์ง€์ ๊ณผ ์ฐธ๊ฒฌ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ๋Œ“๊ธ€ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

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