[๋คํธ์ํฌ] URI
URI
๐ URI(Uniform Resource Identifier)๋?
- Uniform: ๋ฆฌ์์ค๋ฅผ ์๋ณํ๋ ํต์ผ๋ ๋ฐฉ์
- Resource: ์์, URI๋ก ์๋ณํ ์ ์๋ ๋ชจ๋ ๊ฒ(์ ํ ์์)
- Identifier: ๋ค๋ฅธ ํญ๋ชฉ๊ณผ ๊ตฌ๋ถํ๋๋ฐ ํ์ํ ์ ๋ณด
URI๋ ์ธํฐ๋ท ์์ ๋ฆฌ์์ค ์ฆ, ์์ ์์ฒด๋ฅผ ์๋ณํ๋ ์๋ณ์ ์ญํ ์ ํฉ๋๋ค.
๐ URI์ URL์ ์ฐจ์ด์
- URI: ์๋ณ์
- google.com
- URL: ์๋ณ์ + ๋ฆฌ์์ค์ ์์น (ํ๋กํ ์ฝ ํฌํจ)
- https://google.com
URI๋ URL๋ณด๋ค ์์ ๊ฐ๋ ์ด๋ฉฐ, ๋ชจ๋ URI๊ฐ URL์ด ๋๋ ๊ฒ์ ์๋๋๋ค. (URI๋ URL์ ํฌ๊ดํ๋ค.)
๋ฐ๋ผ์, URL์ URI์ ์ผ์ข ์ด๋ผ๊ณ ํ ์ ์์ต๋๋ค.
URL์ ๋ฆฌ์์ค์ ์ ๊ทผํ๋ ๋ฐฉ๋ฒ์ ์ง์ ํ ๋ฐฉ์์ธ ํ๋กํ ์ฝ(ex. https)์ ์ฌ์ฉํด ๋ฆฌ์์ค์ ์์น์ ๋๋ฌํฉ๋๋ค.
๐ URI ๋ฌธ๋ฒ
scheme://[userinfo@]host[:port][/path][?query][#fragment]
ex) http://www.google.com:443/search?q=hello&hl=ko
โช schme
- ์ฃผ๋ก ํ๋กํ ์ฝ์ด ์ฌ์ฉ๋๋ค.
- ํ๋กํ ์ฝ: ์ด๋ค ๋ฐฉ์์ผ๋ก ์์์ ์ ๊ทผํ ๊ฒ์ธ๊ฐ ํ๋ ๊ท์น ex) http, https, ftp ๋ฑ๋ฑ
- http๋ 80ํฌํธ, https๋ 443ํฌํธ๋ฅผ ์ฃผ๋ก ์ฌ์ฉ, ํฌํธ๋ ์๋ต ๊ฐ๋ฅ
- https๋ http์ ๋ณด์ ์ถ๊ฐ(HTTP Secure)
โช userinfo
- URL์ ์ฌ์ฉ์์ ๋ณด๋ฅผ ํฌํจํด์ ์ธ์ฆ
- ๊ฑฐ์ ์ฌ์ฉํ์ง ์์
โช ํธ์คํธ๋ช (www.google.com)
- ๋๋ฉ์ธ๋ช ๋๋ IP ์ฃผ์๋ฅผ ์ง์ ์ฌ์ฉ๊ฐ๋ฅ
โช port(443)
- ์ ์ ํฌํธ
- ์ผ๋ฐ์ ์ผ๋ก ์๋ต๊ฐ๋ฅ, ์๋ต์ http๋ 80, https๋ 443
โช path
- ๋ฆฌ์์ค ๊ฒฝ๋ก, ๊ณ์ธต์ ๊ตฌ์กฐ
- ex) /home/file1.jpg
โช query
- key = value ํํ
- ?๋ก ์์, &๋ก ์ถ๊ฐ ๊ฐ๋ฅ ex> ?keyA=value&keyB=valueB
- query parameter, query string ๋ฑ์ผ๋ก ๋ถ๋ฆผ, ์น์๋ฒ์ ์ ๊ณตํ๋ ํ๋ผ๋ฏธํฐ, ๋ฌธ์ ํํ
โช fragment
- html ๋ด๋ถ ๋ถ๋งํฌ ๋ฑ์ ์ฌ์ฉ
- ์๋ฒ์ ์ ์กํ๋ ์ ๋ณด๊ฐ ์๋.
๐ฌ ์ต์ ๋๊ธ