๐Ÿ”—
โ† ๊ฐ€์ด๋“œ ๋ชฉ๋ก์œผ๋กœ

URL ์ธ์ฝ”๋”ฉ์ด๋ž€? ํผ์„ผํŠธ ์ธ์ฝ”๋”ฉ ์™„๋ฒฝ ๊ฐ€์ด๋“œ

ยท ํƒœ๊ทธ: url-encoding, percent-encoding, web-development, url-encoder, beginner-guide

URL ์ธ์ฝ”๋”ฉ(ํผ์„ผํŠธ ์ธ์ฝ”๋”ฉ์ด๋ผ๊ณ ๋„ ํ•จ)์€ ํŠน์ • ์ƒํ™ฉ์—์„œ URI(Uniform Resource Identifier)์˜ ์ •๋ณด๋ฅผ ์ธ์ฝ”๋”ฉํ•˜๊ธฐ ์œ„ํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ž…๋‹ˆ๋‹ค. URL์— ํ—ˆ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฌธ์ž๋ฅผ ํผ์„ผํŠธ ๊ธฐํ˜ธ์™€ ๋‘ ์ž๋ฆฌ 16์ง„์ˆ˜ ์ˆซ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•ˆ์ „ํ•œ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

URL ์ธ์ฝ”๋”ฉ์ด ํ•„์š”ํ•œ ์ด์œ 

์ธํ„ฐ๋„ท์€ ASCII๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋˜์—ˆ์œผ๋ฉฐ, ASCII๋Š” 128๊ฐœ์˜ ๋ฌธ์ž๋งŒ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. URL์€ ๋น„ASCII ๋ฌธ์ž๋‚˜ ํŠน์ˆ˜ ๋ฌธ์ž๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•˜์ง€ ๋ชปํ•  ์ˆ˜ ์žˆ๋Š” ์‹œ์Šคํ…œ ๊ฐ„์— ์•ˆ์ „ํ•˜๊ฒŒ ์ „์†ก๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. URL ์ธ์ฝ”๋”ฉ์€ ๊ณต๋ฐฑ, ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž, ํŠน์ˆ˜ ๊ธฐํ˜ธ ๋“ฑ ๋ชจ๋“  ๋ฌธ์ž๋ฅผ URL์— ์•ˆ์ „ํ•˜๊ฒŒ ํฌํ•จํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด:

  • ๊ณต๋ฐฑ โ†’ %20
  • @ โ†’ %40
  • ไฝ ๅฅฝ โ†’ %E4%BD%A0%E5%A5%BD

์˜ˆ์•ฝ ๋ฌธ์ž์™€ ๋น„์˜ˆ์•ฝ ๋ฌธ์ž

RFC 3986์€ URL์˜ ๋ฌธ์ž๋ฅผ ๋‘ ๊ฐ€์ง€ ๋ฒ”์ฃผ๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค:

๋น„์˜ˆ์•ฝ ๋ฌธ์ž (์ธ์ฝ”๋”ฉ์ด ํ•„์š” ์—†์Œ): A-Z a-z 0-9 - _ . ~

์˜ˆ์•ฝ ๋ฌธ์ž (ํŠน๋ณ„ํ•œ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๋ฉฐ, ๋ฆฌํ„ฐ๋Ÿด๋กœ ์‚ฌ์šฉํ•  ๋•Œ ์ธ์ฝ”๋”ฉ ํ•„์š”): : / ? # [ ] @ ! $ & ' ( ) * + , ; =

์˜ˆ์•ฝ ๋ฌธ์ž๊ฐ€ URL ๊ตฌ์กฐ์˜ ์ผ๋ถ€๊ฐ€ ์•„๋‹Œ ๋ฐ์ดํ„ฐ์˜ ์ผ๋ถ€๋กœ ์‚ฌ์šฉ๋  ๊ฒฝ์šฐ, ํผ์„ผํŠธ ์ธ์ฝ”๋”ฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ ์ธ์ฝ”๋”ฉ ํ•จ์ˆ˜์˜ ์‚ฌ์šฉ ์‹œ๊ธฐ

  • encodeURI: ๊ตฌ์กฐ์  ๋ฌธ์ž๋ฅผ ๋ณด์กดํ•˜๋ฉฐ ์ „์ฒด URL์„ ์ธ์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค
  • encodeURIComponent: ๋‹จ์ผ URL ๋งค๊ฐœ๋ณ€์ˆ˜ ๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ’์„ ์ธ์ฝ”๋”ฉํ•ฉ๋‹ˆ๋‹ค

์ž˜๋ชป๋œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์›น ๊ฐœ๋ฐœ์—์„œ ๊ฐ€์žฅ ํ”ํ•œ ๋ฒ„๊ทธ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ €ํฌ URL ์ธ์ฝ”๋”/๋””์ฝ”๋”์—์„œ ๋‘ ๋ชจ๋“œ๋ฅผ ์‹คํ—˜ํ•ด ๋ณด์„ธ์š”.

URL ์ธ์ฝ”๋”ฉ์ด๋ž€? ํผ์„ผํŠธ ์ธ์ฝ”๋”ฉ ์™„๋ฒฝ ๊ฐ€์ด๋“œ - CoolTool