Network

URI, URL, URN 차이점

kmkunk 2021. 10. 26. 18:56

URI Venn diagram

1. URI(Uniform Resource Identifier)

- 정보나 어떠한 자원을 하나의 뜻으로 식별하기 위한 데이터 서식을 정의한 규약이다.

- 인터넷에서 이름 또는 자원을 식별하는데 사용한다.

- 하위 개념으로 URL와 URN이 존재한다.

 

URL & URN Structure

2. URL(Uniform Resource Locator)

- 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다.

- 인터넷상의 파일 주소를 찾아서 자원을 가져온다. 또한 파일 주소에 접속하기 위해서는 해당 URL에 맞는 프로토콜을 알아야 한다.

문법 및 예시

종류 설명
scheme http, https, ftp 등 주로 프로토콜을 사용한다.
userinfo - 사용자 정보를 포함한 인증이다.
- 거의 사용하지 않는다.
host - 호스트명이다.
- 도메인명 또는 IP 주소를 직접 사용할 수 있다.
port - 접속 포토를 의미한다.
- 일반적으로 생략한다.
- 생략시 http는 80, https는 443이 적용된다.
path - 리소스 경로를 의미한다.
- 계층적 구조로 되어있다.
query - key=value 형태이다.
- ?로 시작하고, &로 추가할 수 있다.
- query parameter, query string 등으로 불린다.
fragment - html 내부 북마크 등에 사용한다.
- 서버에 전송하는 정보가 아니다.

 

3. URN(Uniform Resource Name)

- 리소스가 더 이상 존재하지 않거나 사용할 수 없게 되어도, urn:scheme를 사용하는 URI는 영속적이고 독립적이게 유지할 수 있다.

- URL에서는 파일 위치에 따라 URI 문자열이 바뀌지만, URN은 파일이 어느 위치에 있어도 URI의 문자열이 바뀌지 않는다.

- URN 이름만으로 실제 리소스를 찾는 방법이 보편적이지는 않다.

 

참고

- https://itbellstone.tistory.com/86

- 『모든 개발자를 위한 HTTP 웹 기본 지식』