매번 헷갈려서 정리하는 URI, URL, URN

YeongMin·2022년 5월 11일
1

네트워크

목록 보기
1/1

👉URI란?

URI(Uniform Resource Identifier): 통합 자원 식별자의 줄임말

브라우저의 검색창에 담겨있는 주소가 URI 이다. (x)
네트워크 상의 리소스를 식별할 수 있는 식별자를 의미한다.

URI의 하위개념

위 그림과 같이 URI 개념의 내부에는 대표적으로 URN, URL이 존재한다.

다른 개념 또한 포함이 되어 있지만 해당 포스트에서는 URI, URL, URN 에 대해서만 다루겠다.

👉URL란?

URL(Uniform Resource Locator) : 통칭 Web Address, 웹 주소

리소스를 리소스의 경로(Location)을 기반으로 식별하는 식별자

웹에서 정해진 유일한 자원의 위치정보가 담긴 주소라고 할 수 있다.
자원에는 HTML, CSS문서, 이미지 등이 정적자원으로 해당 될 수 있다. -MDN-

흔히 웹사이트를 찾기 위함이라고 생각할 수 있으나 그렇지 않다.
더 넓은 의미인 자원(Resource)를 찾기 위함이다.

흔히 말하는 웹사이트는 그 자원에 속할 뿐이다.

  • 네트워크 상에 존재하는 자원의 위치이다.
  • 리소스가 어디에 있고 어떻게 접근할 수 있는지 알려주는 역활이다. => 프로토콜(HTTP, FTP)등을 포함하기 때문
  • 도메인에 프로토콜이 들어가 있다면 그것은 URI 이자 URL이다.
  • 만일 리소스의 위치가 변경된다면 해당 URL로는 리소스를 찾을 수 없다.

👉URN란?

URN(Uniform Resource Name) : 통합 자원 이름

리소스를 리소스의 고유한 이름을 통해 식별하는 식별자

  • 이름으로 리소스를 특정하는 URI
  • URN은 리소스 자체에 부여된 Name이며 변하지 않게 유지가 가능하다.
  • 독립적인 자원 지시자이기 때문에 리소스가 이동해도 항상 리소스를 가리킬 수 있다.
  • 리소스가 그 이름을 변하지 않게 유지하는 한, 여러 종류의 네트워크 접속 프로토콜로 접근해도 문제없다.

URN의 사용법, 또는 구조를 확인하고 싶다면 해당 사이트 를 참고하길 바란다.

비교하기

URI vs URL

URI는 식별하고 URL은 자원의 주소를 가리킨다.

case 1  `http://www.ahn0min.com/index`

case 2  `http://www.ahn0min.com/index.html`

case1 의 경우에는 index가 정확한 자원의 주소가 아니라 내부적으로 rewrite를 통해 index.html을 식별함으로 이는 URI 이지만 URL은 아니다.

case2 의 경우 정확한 자원의 위치를 나타내기 때문에 URL이자 URI이 될 수 있다.

즉 URI는 리소스를 식별했기 때문에 URI는 맞지만 경로를 통해 정확하게 리소스를 직별한 것이 아니기 때문에 URL은 아니다.

why? index가 폴더(path)일 수도 있기 때문이 아닐까?

URL vs URN

  • URL은 Protocol을 포함한다.
    Protocaol//Domain:Port/Path/Page?Parameter

  • URL은 리소스를 리소스의 경로를 기반으로 식별하는 URI이다.

  • URN은 특정 리소스의 고유한 이름을 통해 식별하는 URI이다.

URL 구성요소 분석

Protocol

[http]://
자원에 접글할 방법을 정의해 둔 통신규약을 말한다.

어떤 정보를 요청하는 것인지에 따른 정해진 약속이 있다.

http, https 의 경우 웹사이트를 주고 받을 떄의 통신규약
mailto 의 경우 메일의 주소를 주고받을 떄의 통신규약

Host name

www.example.com

연결할 서버의 ip 주소, 또는 도메인을 말한다.
www(World Wide Web)을 사용, 이를 간단히 줄여 web이라고 말함

port

www.example.com:[port]

연결할 서버의 ip 주소, 또는 도메인에서 프로세스를 구분하기 위해 존재
예를 들어 채팅의 경우와, 자료를 받을 때의 경우 서로 혼동이 일어나지 않게 하기 위해서

path or query

path (경로)

웹에서 자원에 대한 경로를 말한다.
보통 root의 경우 "/" 을 사용한다. ex) https://www.example.com/

매개변수 (query of parameter)

https://www.example.com/main?id=123&password=1234
경로 외에 추가적으로 서버에서 자원을 식별하기 위해 필요한 것이 있을 때 전달하는 ? 뒤에 key와 value로 이루어져 있는 형식

파라미터가 여러개일 경우 & 을 통해 구분한다.

정리

URI

  • URI은 네트워크 상의 리소스를 식별할 수 있는 식별자 전체를 말한다.
  • URI의 하위 개념으로는 URL, URN이 존재한다.

URL

  • URL은 리소스를 리소스의 경로를 통해 식별한다.
  • URL은 일반적으로 4가지 요소로 구성되어 있다. (Protocol, Host Name(Domain), Port 번호, path or query)

URN

  • URN은 리소스를 리소스의 고유한 이름을 통해 식별한다.
  • URN은 대부분 사용하지 않으며 흔히 말하는 URI는 URL을 말한다고도 볼 수 있다.

Reference

profile
Front-End 안영민

0개의 댓글