URL(Uniform Resource Locator)์ ์ธํฐ๋ท์ ๋ฆฌ์์ค๋ฅผ ๊ฐ๋ฆฌํค๋ ํ์ค ์ด๋ฆ์ด๋ค.
๋ฆฌ์์ค๋ผ๋ ์ด๋ฆ ๋ต๊ฒ ์์์ด ์ด๋ ์๊ณ ์ด๋ป๊ฒ ์ ๊ทผํ๋์ง๋ฅผ ๋ํ๋ด๋ ์ด๋ฆ์ธ ์
์ด๋ค.
URL์ ํฌ๊ฒ ์ธ๊ฐ์ง๋ก ๋๋์ด์ ์๋ณํ ์ ์๋ค.
Scheme://Authority/Path
- Scheme : ์น ํด๋ผ์ด์ธํธ๊ฐ ๋ฆฌ์์ค์ ์ด๋ป๊ฒ ์ ๊ทผํ๋์ง๋ฅผ ์๋ ค์ฃผ๋ ์๋ณ์๋ก ํ๋กํ ์ฝ์ ์ด๋ฆ์ ์ด๋ค.
- Authority : ์๋ฒ์ ์์น๋ฅผ ๋ํ๋ด๋ ๋ถ๋ถ์ผ๋ก, ๋ฆฌ์์ค๊ฐ ์ด๋์ ํธ์คํ ๋์ด์๋์ง๋ฅผ ์๋ ค์ค๋ค.
- Path : ๋ฆฌ์์ค์ ๊ฒฝ๋ก๋ฅผ ๋ํ๋ ๋ถ๋ถ์ผ๋ก ์๋ฒ์ ์กด์ฌํ๋ ๋ก์ปฌ ๋ฆฌ์์ค๊ฐ ๋ฌด์์ธ์ง ์๋ ค์ค๋ค.
๊ณผ๊ฑฐ์๋ ์ด๋ฌํ URL์ด ๋ถ์ฌํ๋ฉด์ ๊ฐ๊ธฐ ๋ค๋ฅธ ์์์ ํ์์ด๋ ๊ณต์ ๋ฑ์ด ์ด๋ ค์ ์ง๋ง, URL์ด ๋ฑ์ฅํ ์ดํ๋ก๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ค์ด ๊ณตํต์ ์ผ๋ก ๋ฆฌ์์ค์ ์ ๊ทผํ ์ ์๋ ๋ฐฉ๋ฒ์ ์ ๊ณตํ๋ฉด์ ์ง๊ธ๊ณผ ๊ฐ์ด ํธ๋ฆฌํ๊ฒ ์์์ ๋ณด๊ณ ๊ณต์ ํ ์ ์๋ค-.
URL ๋ฌธ๋ฒ
๋๋ถ๋ถ์ URL ์คํด์ ๋ฌธ๋ฒ์ ํต์ผ๋์ด์๊ธฐ ๋๋ฌธ์ ๋ด๊ฐ ํ์์ ๋ง์ถฐ ์ฐ๋ฉด ๋๋ค.

<์คํด>://<์ฌ์ฉ์ ์ด๋ฆ>:<๋น๋ฐ๋ฒํธ>@<ํธ์คํธ>:<ํฌํธ>/<๊ฒฝ๋ก>;<ํ๋ผ๋ฏธํฐ>?<์ง์>#<ํ๋๊ทธ๋จผํธ>
| ์ปดํฌ๋ํธ | ์ค๋ช | ๊ธฐ๋ณธ๊ฐ |
|---|---|---|
| ์คํด | ํ๋กํ ์ฝ๋ช
. ์ํ๋ฒณ์ผ๋ก ์์ํ๊ณ ๋์๋ฌธ์ ์๊ฐ๋ฆผ. : ๋ก ๊ตฌ๋ณ | ์์ |
| ์ฌ์ฉ์ ์ด๋ฆ | ๋ฆฌ์์ค์ ์ ๊ทผํ๊ธฐ ์ํ ์ฌ์ฉ์ ์ด๋ฆ | anonymous |
| ๋น๋ฐ๋ฒํธ | ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ | <์ด๋ฉ์ผ ์ฃผ์> |
| ํธ์คํธ | ๋ฆฌ์์ค๋ฅผ ํธ์คํ ํ๋ ์๋ฒ์ ํธ์คํธ ๋ช ์ด๋ IP์ฃผ์ | ์์ |
| ํฌํธ | ๋ฆฌ์์ค๋ฅผ ํธ์คํ ํ๋ ์๋ฒ๊ฐ ์ด์ด๋์ ํฌํธ๋ฒํธ | HTTP๋ 80, HTTP๋ 443 |
| ๊ฒฝ๋ก | ๋น๊ธ์ผ๋ก ๊ฒฝ๋ก๋ฅผ ํ์ | ์์ |
| ํ๋ผ๋ฏธํฐ | ์ด๋ฆ/๊ฐ์ ์์ผ๋ก ๊ฐ์ง๋ URL์์ ์ธ์ | ์์ |
| ์ง์ | ํ๋ผ๋ฏธํฐ๋ฅผ ๋๊ธธ ๋ ์ฐ๋ ๊ฐ | ์์ |
| ํ๋๊ทธ๋จผํธ | โ#โ๋ก ๊ตฌ๋ณํ๋ ๋ฆฌ์์ค ์กฐ๊ฐ์ด๋ ์ผ๋ถ๋ถ์ ์ด๋ฆ | ์์ |
Scheme
- ์ฐ๋ฆฌ๋
http๋https์ ๋๋ง ์จ๋ดค์ ํ ์ง๋ง ๋ค๋ฅธ ๋ชจ๋ ํ๋กํ ์ฝ๋ ์ง์ํ๋ค. - : ๋ฌธ์๋ก ๊ตฌ๋ถํ๊ณ , ์ดํ์๋
//๋ฅผ ์จ์ ๋ท๋ถ๋ถ๊ณผ ๋ช ํํ๊ฒ ๊ตฌ๋ถํ๋ค. - ๋์๋ฌธ์๋ฅผ ๊ฐ๋ฆฌ์ง ์๋๋ค
ํธ์คํธ์ ํฌํธ
- ์ ๊ทผํ๋ ค๋ ๋ฆฌ์์ค๋ฅผ ๊ฐ์ง๊ณ ์๋ ์ธํฐ๋ท์์ ํธ์คํธ ์ฅ๋น๋ฅผ ๋ํ๋ธ๋ค.
- ํธ์คํธ ๋ช ์ด๋ IP์ฃผ์์ ๊ฐ์ ํํ๋ก ์ ๊ณตํ๋ค.
- ํฌํธ๋ ์๋ฒ๊ฐ ์ด์ด๋์ ๋คํธ์ํฌ ํฌํธ๋ก, TCP ํ๋กํ ์ฝ์ ์ฌ์ฉํ๋ HTTP๋ ๊ธฐ๋ณธ์ผ๋ก 80, HTTPS๋ 443์ ์ฌ์ฉํ๋ค.
์ฌ์ฉ์ ์ด๋ฆ๊ณผ ๋น๋ฐ๋ฒํธ
- ์๋ฒ๊ฐ ๊ฐ์ง๊ณ ์๋ ๋ฐ์ดํฐ์ ์ ๊ทผ์ ํ๊ธฐ ์ํด ์ฃผ๋ก ์ฌ์ฉ๋๋ค.
- ์ฃผ๋ก ftp ์๋ฒ์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ http์์๋ ๊ฑฐ์ ๋ณผ ์ผ์ด ์๋ค
- ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ฌ๊ธฐ์น ๋ ๋ง์ด ์ฐ์ด๋ ์๋ฒ์ผ๋ก๋ ์ฌ์ฉ๋๋ค.
- ๋ณดํต ์ํฉ์์๋ ๋ธ๋ผ์ฐ์ ๊ฐ ์๋์ผ๋ก ์ด๋ฆ์ anonymous, ๋น๋ฐ๋ฒํธ๋ ๊ฐ ๋ธ๋ผ์ฐ์ ๊ฐ ์ค์ ํ ๋ํดํธ ๊ฐ์ผ๋ก ๋ค์ด๊ฐ๋ค
๊ฒฝ๋ก
- ๋ฆฌ์์ค๊ฐ ์๋ฒ์ ์ด๋์ ์๋์ง ์๋ ค์ค๋ค
/๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ ๋ฆฌ์์ค์ ๊ฒฝ๋ก๋ฅผ ๊ตฌ๋ถํ๋ค
์ง์ ํ๋ผ๋ฏธํฐ์ ๊ฒฝ๋ก ํ๋ผ๋ฏธํฐ
์ฐ๋ฆฌ๋ ์ด์ ๊น์ง ?๋ก ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๋ ํ๋ผ๋ฏธํฐ๋ง ์ฃผ๋ก ๋ณด์์ง๋ง, ;๋ก ๊ตฌ๋ณํ๋ ํ๋ผ๋ฏธํฐ๋ ์๋ค. ?๋ก ํ๋ผ๋ฏธํฐ๋ฅผ ์
๋ ฅํ๋ ๊ฒ์ Query parameter(์ง์ ํ๋ผ๋ฏธํฐ)์ด๊ณ , ํด๋น ํ๋ผ๋ฏธํฐ๋ Path parameter(๊ฒฝ๋ก ํ๋ผ๋ฏธํฐ)์ด๋ค.
๊ฒฝ๋ก ํ๋ผ๋ฏธํฐ
- ์๋ฒ์ ์ ํํ ๋ฆฌ์์ค ์์ฒญ์ ํ๊ธฐ ์ํด ํ์ํ ๊ฐ๋ค์ ๋ฃ๋ ์ญํ ์ ํ๋ค
- ์ด๋ฆ/๊ฐ ์์ ๋ฆฌ์คํธ๋ก URL ๋๋จธ์ง ๋ถ๋ถ๋ถํฐ
;๋ก ๊ตฌ๋ณํ์ฌ ๊ธฐ์ ํ๋ค. - ์์ฆ์
Nextjs๊ฐ์ ํ๋ ์์ํฌ์์๋ ์ง์์ ์ํ๊ณ ๋ฌด์กฐ๊ฑด ๊ฒฝ๋ก๋ ์ง์ ํ๋ผ๋ฏธํฐ๋ก ๊ตฌ๋ณํ๊ธฐ ๋๋ฌธ์ ๋ณด๊ธฐ ํ๋ค๋ค
์ง์ ํ๋ผ๋ฏธํฐ
?๋ฅผ ์์ ์ฐ๊ณ ๋ค์ ์ฐพ๊ณ ์ ํ๋ ๊ฐ์ ๋ํด์ ์ง์ ํ์์ผ๋ก ์ฐ๋ ๊ฒ์ ์๋ฏธํ๋ค.?์ฐ์ธก์ ์๋ ๊ฒ์ ์ง์ ์ปดํฌ๋ํธ๋ผ๊ณ ๋ ํ๋ค.- ๊ฐ๊ฐ์ ์ง์๊ฐ
&๋ก ๋๋ ์ด๋ฆ=๊ฐ ์์ ํํ์ด๋ค.
ํ๋๊ทธ๋จผํธ
- ๋ณธ๋์ ์์ค๋ณด๋ค ๋ ์๊ฒ ๋๋ ๋ฆฌ์์ค์ ํํ์ด๋ค.
- ๋ฆฌ์์ค ์์ ์๋ ํน์ ์ ์ ๊ฐ๋ฆฌํค๊ธฐ๋ ํ๋ค.
- https://poiemaweb.com/js-spa#2-routing
- ์ ๊ฒฝ๋ก๋ก ๋ค์ด๊ฐ๋ณด๋ฉด ํ๋์ html์์ # ์ดํ์ ๊ฐ์ ๋ํด์ id๊ฐ์ ๊ฐ์ง๊ณ ์๋ ๋ถ๋ถ์ ํฌ์ปค์ฑํด์ ๋ณด์ฌ์ค๋ค.

- ํ๋๊ทธ๋จผํธ๋ ์๋ฒ๋ก ๋ณด๋ด๋ ๊ฒ์ด ์๋, ๋ธ๋ผ์ฐ์ ๊ฐ ํด์ ๋ค์ ํ๋๊ทธ๋จผํธ๋ฅผ ์ฝ๊ณ ์ฒ๋ฆฌํ๋ ๋ฐฉ์์ด๋ค.
๋จ์ถ URL
๋๋๋ก URL์ ํ๋ํ๋ ๋ค ์ ๋ ฅํ๋ ๊ฒ์ด ๊ท์ฐฎ์ ๋๊ฐ ์๋ค. ๊ณ์ ํ๊ณ ๋ค๋ค ๋ณด๋ฉด URL์ด ์๊ฐ๋ณด๋ค ๊ธธ์ด์ง๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์๊ธฐ ๋ง๋ จ์ด๊ธฐ ๋๋ฌธ์ ๋ธ๋ผ์ฐ์ ๋ ์ฌ์ฉ์๊ฐ ๊ธฐ์ตํ๊ณ ์๋ url ์ผ๋ถ๋ฅผ ์ ๋ ฅํ๋ฉด ๋๋จธ์ง ๋ถ๋ถ์ ์๋์ผ๋ก ์ ๋ ฅํด์ฃผ๋ URL ์๋ ํ์ฅ์ ์ง์ํ๋ค.
URL์ ์๋ URL๊ณผ ์ ๋ URL๋ก ๋๋๋ค. ๋ณดํต ์ฐ๋ฆฌ๊ฐ ๋ณด๋ URL์ ์ฒ์ ์์์ ๋ถํฐ ์ด๋ค ๋ฆฌ์์ค์ ์ ๊ทผํ๊ธฐ ์ํ ๊ฒฝ๋ก๋ฅผ ๋ค ์ฐ๋๋ฐ, ์ด๋ฌํ URL์ด ์ ๋ URL์ด๋ค. ๊ทธ๋ ๋ค๋ฉด ์๋ ๊ฒฝ๋ก๋ ์ฐ๋ฆฌ๊ฐ ํฐ๋ฏธ๋๋ก ./index.html์ ํตํด์ ํด๋น ํ์ผ์ ์ ๊ทผํ๋ ๋ฐฉ์์ ์ด๋ป๊ฒ ์ฌ์ฉํ๋ ๊ฑธ๊น?
์๋ URL
์๋ URL์ ๋ง ๊ทธ๋๋ก ์๋์ ์ธ ์์น์์์ URL์ ์๋ฏธํ๋ค. ์ฌ์ฉ์์ ์ ์ฅ์์๋ ์๋ ๊ฒฝ๋ก๋ฅผ ์ ์ฅํ ์ ์์ง๋ง, ๊ฐ๋ฐ์์ ์ ์ฅ์์๋ ์๋ ๊ฒฝ๋ก๋ฅผ ํตํด ํ์ฌ ์๋ ํ์ด์ง์์ ๋ค๋ฅธ ํ์ด์ง๋ก ๊ฐ๋ ๊ฒฝ๋ก๋ฅผ ์๋ URL๋ก ์ ๋ ฅํ ์ ์๋ค. ์ฆ, ๊ฐ๋ฐ์๋ ๋ชจ๋ URL์ ์ง์ ์ฒ์๋ถํฐ ์ฐ์ง ์์๋ ๋๋ค๋ ๋ป์ด๋ค. ์ด๋ ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ URL๊ณผ ์ ๋ URL๊ฐ ์ํธ ๋ณํ์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ๊ฐ๋ฅํ ๋ฐฉ์์ด๋ค.
๊ธฐ์ URL
๊ธฐ์ URL์ ์ด๋ฌํ ์๋ URL์์ ํ์ฌ URL์ด ๊ฐ์ง๊ณ ์๋ URL์ ์ ๋ณด๋ฅผ ์๋ฏธํ๋ค.
https://www.naver.com/blog ์์ ๋ค์ https://www.naver.com/๋ก ๊ฐ๋ค๊ณ ํ ๋, ์๋ URL์์๋ ./๋ง ์
๋ ฅํ๋ฉด ๋๊ณ , ์ด ์ํ์์ ๊ธฐ์ URL์ https://www.naver.com/๊ฐ ๋๋ค.
์ด๋ ๊ฒ ์๋ ๊ฒฝ๋ก๋ฅผ ์ ๋ ๊ฒฝ๋ก๋ก ์ํธ๋ณํํ๋ ๊ณผ์ ์์ ๊ธฐ์ URL์ ์ ๋ณด๋ฅผ ๋ธ๋ผ์ฐ์ ๊ฐ ์์๋ผ ์ ์์ด์ผ ์ ์์ ์ผ๋ก ์ ๋๊ฒฝ๋ก๋ก ๋ณํํ ์ ์๋๋ฐ, ์ด๋ ๊ฒ ๊ธฐ์ URL์ ๊ฐ์ ธ์ค๋ ๋ช ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋ค.
- ๋ฆฌ์์ค์์ ๋ช
์์ ์ ๊ณต
<BASE>HTML ํ๊ทธ๋ฅผ ํตํด ๋ช ์
- ๋ฆฌ์์ค๋ฅผ ํฌํจํ๊ณ ์๋ ๊ธฐ์ URL
- ๊ธฐ์ URL์ด ๋ช ์๋์ง ์์ ๋ฆฌ์์ค์ ์๋ URL์ด ํฌํจ๋๋ฉด ํด๋น ๋ฆฌ์์ค์ URL์ ๊ธฐ์ URL๋ก ์ฌ์ฉ ๊ฐ๋ฅ
- ๊ทธ๋ฅ ํ์ฌ๋ฅผ ๊ธฐ์ค์ผ๋ก ์๋ URL์ ์ ์ฉํ๋ค๋ ์๊ธฐ
์๋ URL์ ์ ๋ URL๋ก ๋ฐ๊พธ๊ธฐ
๊ธฐ์ URL์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์๋ค๋ฉด, ํด๋น ์ ๋ณด๋ฅผ ๋ฐํ์ผ๋ก ์๋ ๊ฒฝ๋ก๋ฅผ ์ ๋ ๊ฒฝ๋ก๋ก ๋ณํํด์ผ ํ๋ค. ๋ธ๋ผ์ฐ์ ๋ ์ด ๊ณผ์ ์์ URL์ ํ์ฑํ์ฌ ์ปดํฌ๋ํธ ๋จ์๋ก ๋ถ๋ฆฌํ๊ณ , ๊ธฐ์ URL๊ณผ ๋ฐ์๋ ํ๋ผ๋ฏธํฐ, ์๋ ๊ฒฝ๋ก ๋ฑ ๊ฐ ์ํฉ์ ๋ง๊ฒ ์ฌ์กฐํฉํจ์ผ๋ก์จ ์ ๋ URL๋ก ๋ณํํ ์ ์๋ค. ์ด๋ ๊ฒ ๋ณํํ ์ ๋ URL์ ๊ฐ์ง๊ณ ๋คํธ์ํฌ ์์ฒญ์ ๋ณด๋ด๋ฉด์ ์ ์์ ์ผ๋ก ๋ฆฌ์์ค๋ฅผ ์์ฒญํ ์ ์๋ค.
URL ํ์ฅ
๋๋ถ๋ถ์ ๋ธ๋ผ์ฐ์ ์์๋ ์ฐ๋ฆฌ๊ฐ ํธ์คํธ๋ช
, ์ฆ naver์ ๊ฐ์ ํธ์คํธ๋ง ์
๋ ฅํด๋ ํด๋ฆฌ์คํฑํ๊ฒ ์๋์์ฑ์ ์ ๊ณตํด์ฃผ๋ ๊ธฐ๋ฅ๋ค์ ์ ๊ณตํ๋ค. ์ด๋ฌํ ๊ธฐ๋ฅ๋ค์ URL ํ์ฅ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
URL ํ์ฅ์ ์ข
๋ฅ์๋ ํธ์คํธ๋ช
ํ์ฅ๊ณผ ํ์คํ ๋ฆฌ ํ์ฅ์ด ์๋ค.
ํธ์คํธ๋ช
ํ์ฅ์ ๊ฒฝ์ฐ naver๋ง ์ณ๋ ๋ธ๋ผ์ฐ์ ๋ ์๋ค๋ก www์ .com์ ๋ฃ์ด์ค๋ค.
ํด๋ฆฌ์คํฑํ๊ฒ ์ฐ๋ฆฌ๊ฐ ๊ฐ๋ ค๋ ํธ์คํธ๋ฅผ ํ์ฅ์ํค๋ ๋ฐฉ์์ด๋ค.
ํ์คํ ๋ฆฌ ํ์ฅ์ ๊ฒฝ์ฐ ๋ธ๋ผ์ฐ์ ๊ฐ ๊ณผ๊ฑฐ์ ๋ด๊ฐ ๋ฐฉ๋ฌธํ๋ URL์ ๊ธฐ๋ก์ ์ ์ฅํด๋๊ณ , ์ ๋ ฅ๋ URL์ ์๊ธ์๋ค์ ํฌํจํ๋ ์๊ฒฐ๋ ํํ์ URL๋ค์ ์ ํํ๊ฒ ํด์ค๋ค.
๋ ๋ค ํํ ๋งํด URL ์๋์์ฑ์ด๋ค.
์์ ํ์ง ์์ ๋ฌธ์
URL์ ํ์ด๋ถํฐ ์ธํฐ๋ท์ ์๋ ๋ชจ๋ ๋ฆฌ์์ค๋ฅผ ํ๋กํ ์ฝ์ ํตํด ์์ ํ๊ฒ ์ ์ ๋ฌ๋ ์ ์๋๋ก ๋ง๋ค์ด์ก๋ค.
โ์์ ํ๊ฒ ์ ์กโ์ด๋ผ๋ ๋ป์ ์ ๋ณด๊ฐ ์ ์ค๋ ์ํ ์์ด URL์ ์ ์กํ๋ ๊ฒ์ ์๋ฏธํ๋ค.
๊ทธ๋ ๊ธฐ์ ์ด ์์ ํ๊ฒ ์ ์กํ๊ธฐ ์ํด์ URL ์ค๊ณ์๋ค์ URL์ ์์ ์ฑ์ ํด์น ์ ์๋ ํน์ ๋ฌธ์๋ฅผ ์ฐ์ง ์๋๋ก ๊ธ์งํ๋ค. ํ์ง๋ง ๋ฐ์ด๋๋ฆฌ ๋ฐ์ดํฐ๋ฅผ url๋ก ์ ์ฅํ๊ฑฐ๋ url์ db์ฒ๋ผ ์ฐ๋ ค๋ ์๋จ์๋ค์ด ์๊ธฐ์ ์ด์ค์ผ์ดํ๋ผ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ฌ ์์ ํ์ง ์์ ๋ฌธ์๋ฅผ ์์ ํ ๋ฌธ์๋ก ์ธ์ฝ๋ฉํ ์ ์๊ฒ ํ๋ค.

์ด๋ฌํ ๊ท์น์ RFC 2616 ๋ฌธ์์๋ ๋์ ์๋๋ฐ, URL ์ธ์ฝ๋ฉ์ ASCII ๋ฌธ์ ์งํฉ์ผ๋ก ์ธ์ฝ๋ฉ ํ๋ ๊ฒ์ด ํ์ค์ด๊ธฐ ๋๋ฌธ์ ์์คํค ๋ฌธ์ ์ฝ๋์ ํฌํจ๋์ง ์๋ ๋ฌธ์์ ๋ํด์๋ ๋ณํ์ ํด์ฃผ์ด์ผ ํ๋ค.
์ด๋ฌํ ์ธ์ฝ๋ฉ ๊ณผ์ ์์ ํผ์ผํธ ๊ธฐํธ๊ฐ ๋ง์ด ์๊ธฐ๋ฏ๋ก ํผ์ผํธ ์ธ์ฝ๋ฉ์ด๋ผ๊ณ ๋ ํ๋ค.
ํผ์ผํธ ์ธ์ฝ๋ฉ
Percent-encodingย ์ย URLย ๋งฅ๋ฝ์์ ํน์ ์๋ฏธ๋ฅผ ๊ฐ๋ 8๋นํธ ๋ฌธ์๋ก ์ธ์ฝ๋ฉํ๋ ๋ฉ์ปค๋์ฆ์ด๋ค. ์ธ์ฝ๋ฉ์ โ%โ ๋ค์์ ๋ณ๊ฒฝํ ๋ฌธ์๋ฅผ ASCII ๊ฐ์ผ๋ก ํํ๋๋ 16์ง์๊ฐ ์์นํ๋ ๋์ฒด ๋ฌธ์์ด๋ก ๊ตฌ์ฑ๋๋ค.
URL ๋ฌธ์ ์งํฉ
์ปดํจํฐ๋ ๋๋ถ๋ถ ์์ด ์ค์ฌ์ผ๋ก ๋ฌธ์ ์งํฉ์ด ์ค์ ๋์ด ์์๊ธฐ ๋๋ฌธ์ US-ASCII ๋ฌธ์ ์งํฉ์ ์ฌ์ฉํ๋ค. ํด๋น ๋ฌธ์ ์งํฉ์ 7๋นํธ๋ฅผ ์ฌ์ฉํ๋๋ฐ ๊ฐ ๋ฌธ์๊ฐ ์ ์ธ๊ณ ์ธ์ด๋ฅผ ์์ฉํ์ง ๋ชปํ๊ธฐ์ 8๋นํธ์ ASCII ์ฝ๋๋ก ๋ฐ๋์๋ค.
๋์ค์๋ ์ด์ง ๋ฐ์ดํฐ๋ฅผ ํ์๋ก ํ๋ ๊ฒฝ์ฐ๋ ์๊ฒผ์ง๋ง ๊ธฐ์กด์ ASCII ์ฝ๋์์๋ ๋ฌธ์ ๋ฐ์ดํฐ ์ ์ก์ ์ํ ๋ฌธ์ ์งํฉ์ด์์ผ๋ฏ๋ก, ์ด์ง ๋ฐ์ดํฐ๋ฅผ ์์ฉํ์ง ๋ชปํ๋ค. ์ฌ๊ธฐ์ ASCII ์ฝ๋์์ ๋ค๋ฅธ ๋ฌธ์ ์งํฉ์ผ๋ก ๋ฐ๊พธ์ง ์๊ณ Base64, uuencode๊ฐ์ด ์ด์ค์ผ์ดํ ๋ฌธ์๋ฅผ ๋์
ํ์ฌ ์ด์ง ๋ฐ์ดํฐ๋ฅผ ASCII ์ฝ๋๋ก ๋ฐ๊ฟ ์ ์๋๋ก ํ์๋ค.
๋ฌธ์ ์ ํ
๊ทธ๋ฌ๋ ์ด ๋ฌธ์ ์งํฉ์ ์ฌ์ฉํ๋ฉด์๋ ๋ช๋ช ์์ธ์ผ์ด์ค๊ฐ ์๋๋ฐ, ๋ช๋ช ๋ฌธ์๊ฐ ์ด๋ฏธ URL ๋ด์์ ํน๋ณํ ์๋ฏธ๋ก ์์ฝ๋์ด์๋ ๋ฌธ์๋ ๋ค๋ฅธ ์์ธ ๋ฌธ์๋ค์ ์ธ์ฝ๋ฉ์ ํ์ง ์๊ณ ์ฌ์ฉํ๊ฒ ๋๋ค๋ฉด ์ค๋ฅ์ ๊ฐ๋ฅ์ฑ์ด ์์ผ๋ฏ๋ก ๊ทธ ์ ์ ์ธ์ฝ๋ฉ์ ๊ผญ ํ๋๋ก ํ๋ค.

์ด๋ ๊ฒ URL์ ์ธ์ฝ๋ฉํ๋ ์ญํ ์ ์ฐ๋ฆฌ๊ฐ ์ฒ์ ๋คํธ์ํฌ ์์ฒญ์ ๋ณด๋ผ ๋ ๊ฐ์ฅ ์๋จ์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋ฅผ ๋ฏธ๋ฆฌ ์ฒ๋ฆฌํด์ ์ธ์ฝ๋ฉํ ๊ฒ๋ค์ ๊ณจ๋ผ ์ธ์ฝ๋ฉํ ํ ๋คํธ์ํฌ ์์ฒญ์ ๋ณด๋ด๋ ๊ฒ์ด ๋ฒ ์คํธ์ด๋ค.
Scheme๊ณผ ๊ฐ๊น์์ง๊ธฐ
์์์ ์๊ธฐํ๋ Scheme์ ๊ฐ๋จํ๊ฒ๋ง ์ค๋ช ํ์ง๋ง ์ฌ๋ฌ ํ๋กํ ์ฝ์ ๋ค๋ฃจ๊ธฐ ๋๋ฌธ์ ์๋นํ ์ค์ํ๋ค.
| ์คํด | ์ค๋ช |
|---|---|
| http | - ์ผ๋ฐ URL ํฌ๋งท์ ์งํค๋ ํ์ดํผํ
์คํธ ์ ์ก ํ๋กํ ์ฝ - ํฌํธ๋ฒํธ ๊ธฐ๋ณธ๊ฐ 80 |
| https | - HTTP ์ปค๋ฅ์
์ ์ ๋๋จ์์ ์ํธํํ๊ธฐ ์ํด ๋ท์ค์ผ์ดํ์์ ๊ฐ๋ฐํ ๋ณด์ ์์ผ ๊ณ์ธต(Sercure Sockets Layer, SSL)์ ์ฌ์ฉ - ํฌํธ๋ฒํธ ๊ธฐ๋ณธ๊ฐ 443 |
| malito | - ์ด๋ฉ์ผ ์ฃผ์๋ฅผ ๋ํ๋ด๋ ์คํด |
| ftp | - ํ์ผ ์ ์ก ํ๋กํ ์ฝ(File Transfer Protocol)๋ก FTP ์๋ฒ์ ์๋ ํ์ผ์ ๋ด๋ ค๋ฐ๊ฑฐ๋ ์ฌ๋ฆฌ๊ณ ๊ฐ์ ธ์ฌ ๋ ์ฌ์ฉ |
| rtsp,rtspu | - ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ ํ๋กํ ์ฝ(Real Time Streaming Protocol)์ ํตํด ์ฝ์ ์ ์๋ ์ค๋์ค ๋ฐ ๋น๋์ค์ ๊ฐ์ ๋ฏธ๋์ด ๋ฆฌ์์ค ์๋ณ์ - rtspu๋ฒ์ ์ UDP ํ๋กํ ์ฝ์ด ์ฌ์ฉ๋ผ์ u๊ฐ ๋ถ์ |
| file | - ๋ก์ปฌ์์ ๋ฐ๋ก ์ ๊ทผํ ์ ์๋ ํ์ผ๋ค์ URL ํฌ๋งท์ ๋ฐ๋ผ ๋ง๋ URL - file://<ํธ์คํธ>/๊ฒฝ๋ก์ ํ์ |
| news | - ํน์ ๋ฌธ์๋ ๋ด์ค ๊ทธ๋ฃน์ ์ ๊ทผํ๋๋ฐ ์ฌ์ฉ๋จ - ๋ฆฌ์์ค ์์น ์ ๋ณด๋ฅผ ์ถฉ๋ถํ ํฌํจํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์๋ก๋ถํฐ ๊ทธ ์ ๋ณด๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์์๋ด์ผ ํ๋ค - ์ฌ๋ฌ ์๋ฒ๋ฅผ ํตํด ๋ด์ค ๋ฆฌ์์ค์ ์ ๊ทผ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์์น์ ๋ ๋ฆฝ์ ์ด๋ค. |
| telnet | - ๋ํํ ์๋น์ค์ ์ ๊ทผํ๋๋ฐ ์ฌ์ฉ๋๋ค - telnet://<์ฌ์ฉ์ ์ด๋ฆ>:<๋น๋ฐ๋ฒํธ>@<ํธ์คํธ>:<ํฌํธ>/์ ํ์ |
๋ฅ๋งํฌ
๋ชจ๋ฐ์ผ ์น ์๋น์ค์์ ๋ค๋ฅธ ์ฑ์ ์ด์ด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. ์๋ฅผ ๋ค์ด, ์จ๋ผ์ธ ์ผํ๋ชฐ์์ ์นด๋ ๊ฒฐ์ ๋ฅผ ์ ํํ๋ฉด ์ ํํ ์นด๋์ ์ฑ์ ์คํํด์ ๊ฒฐ์ ๋ฅผ ์๋ฃํ๋ค. ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ฅผ ํ๋ฉด์ ๋ฐฐ์ฐ๊ฒ ๋ ๊ฑด๋ฐ ๋ชจ๋ฐ์ผ ํ๊ฒฝ์์ ์ด๋ ๊ฒ ๋ด ์น ๋๋ ์ฑ ์๋น์ค์์ ๋ค๋ฅธ ์ฑ์ ํน์ ํ๋ฉด์ ๋ฐ๋ก ๋์ฐ๊ฒ ํ๋ ค๋ฉด **๋ฅ๋งํฌ(Deep Link)**๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
๋ฅ๋งํฌ๋ฅผ ๋งํ ์ด์ ๋ ์ด ๋ํ URL์ ํ์์ ๊ฐ์ง๊ณ ์๋ค. ์ด์์ฒด์ ๋ง๋ค๋ ๊ฐ๊ฐ์ ์คํด์ ๊ฐ์ง๊ณ ์๋ค.

์ด๋ฐ ์์ผ๋ก ์ด์์ฒด์ ๋ ์๊ณ , ์ฑ ๋ง๋ค๋ ๊ฐ์์ ์คํด์ด ์๋ค. ์ฃผ๋ก bundle identifier๋ ์ค์ json ์์ ๋ช
์ํ schem์ ์ฌ์ฉํ๋ค.
com.example.app://somepath/details
์ด๋ฐ ์์ผ๋ก bundle identifier๋ ์ปค์คํ
scheme์ด ์์ ๋ถ๊ณ , ๊ทธ ๋ค์ ๊ฐ๊ฐ ๋ด๊ฐ ์ค์ ํด๋์ url ๋๋ก ์ด๋ํ๊ฒ ๋๋ค.
import * as Linking from 'expo-linking';
export default function Home() {
const url = Linking.useURL();
if (url) {
const { hostname, path, queryParams } = Linking.parse(url);
console.log(
`Linked to app with hostname: ${hostname}, path: ${path} and data: ${JSON.stringify(
queryParams
)}`
);
}
return (
)
}