ETC/Network
[Network] URI, URL, URN 차이
장쫄깃
2022. 4. 24. 22:59
728x90
URI란?
- URI는 Uniform Resource Identifier, 통합 자원 식별자의 줄임말이다.
- 인터넷의 자원을 식별할 수 있는 문자열을 의미한다. 그 중 URL, URN이라는 하위 개념을 만들어서 특별히 어떤 표준을 지켜서 자원을 식별하는 것이다.
- 인터넷에 있는 자원을 나타내는 유일한 주소이다.
- 어떤 형식이 있다기 보다는 특정 자원을 식별하는 문자열을 의미한다. 그래서 URL이 아니고 URN도 아니고 그냥 URI가 되는 것이다.
URL이란?
- URL은 Uniform Resource Locator의 줄임말이다.
- 네트워크 상에서 웹 페이지, 이미지, 동영상 등의 파일이 위치한 정보를 나타낸다.
- FTP, SMTP 등 다른 프로토콜에서도 사용할 수 있다.
웹 상의 주소를 나타내는 문자열이기 때문에 더 효율적으로 리소스에 접근할 수 있는 클린한 URL 작성을 위한 방법론들이 생겨났고 REST API도 그 중 하나이다.
(파일이 존재하는 것은 아니지만 프로그램을 돌려서 결과로 만들어진 리소스를 표현한 것도 URL, 예를 들면 데이터베이스의 학생 목록 같은 것들을 자원을 URL로 정의해서 CRUD하는 REST API가 그러함, Query하여 좀 더 자원을 특정한다고 하여 URL이 아니지 않음)
URI(URL)의 구성요소
- Scheme : 통신 방식(프로토콜)을 결정한다. 일반적으로 http(s)를 사용한다.
- hosts : 웹 서버의 이름, 도메인, IP를 사용하여 주소를 나타낸다.
- url-path : 웹 서버에서 지정한 루트 디렉토리부터 시작하여 웹 페이지, 이미지, 동영상 등이 위치한 경로와 파일명을 나타낸다.
- query : 웹 서버에 보내는 추가적인 질문이다.
URN이란?
- URN은 Uniform Resource Name의 줄임말이다.
- URI의 표준 포맷 중 하나로, 이름으로 리소스를 특정하는 URI이다.
- http와 같은 프로토콜을 제외하고 리소스의 name을 가리키는데 사용된다.
- 리소스를 영구적이고 유일하게 식별할 수 있는 URI이다.
- 리소스 접근 방법과 웹 상의 위치가 표기되지 않는다.
- 리소스 자체에 부여된 영구적이고 유일한 이름이고 변하지 않는다.
- 실제 자원을 찾기 위해서는 URN을 URL로 변환하여 이용한다.
URI, URL, URN의 차이점
- URL은 어떻게 리소스를 얻을 것이고 어디에서 가져와야 하는지 명시하는 URI이다.
- URN은 리소스를 어떻게 접근할 것인지 명시하지 않고 경로와 리소스 자체를 특정하는것을 목표로 하는 URI이다.
정리하며
URI는 URL과 URL을 포함하는 상위개념이다.
따라서, 'URL은 URI다.' 는 참이고, 'URI는 URL이다.' 는 거짓이다.
참고
728x90