본문 바로가기
프레임워크/웹 지식

URI와 URL, URN 정확히 짚고 넘어가기

by 클레어몬트 2024. 10. 5.

웹의 발전과 함께 URI(Uniform Resource Identifier)URL(Uniform Resource Locator)은 인터넷상에서 자원을 식별하고 접근하는 데 필수적인 개념으로 자리매김하고 있다. 그러나 이 두 용어는 종종 혼용되어 사용되며, 그 차이점과 정확한 사용법에 대한 이해가 부족한 경우가 많다. 본 글에서는 URL과 URI의 정의, 차이점, 특징, 장단점, 그리고 실제 활용 사례에 대해 자세히 살펴보고자 한다.

추가로 URN(Uniform Resource Name)도 함께 같이 알아보자

URI는 포괄적인 자원 식별자 개념이다

 

ㅇURI(Uniform Resource Identifier): 인터넷상의 자원을 식별하는 고유한 문자열

URI는 특정 자원을 고유하게 식별할 수 있는 문자열의 집합으로, URL과 URN을 포함하는 포괄적인 개념이다.

 

ㅇURL(Uniform Resource Locator): 자원의 위치를 지정하고, 해당 자원에 접근하는 방법을 명시하는 URI의 한 종류

예를 들어, https://www.example.com/index.html은 프로토콜(https), 도메인(www.example.com), 경로(/index.html)를 포함하여 자원의 위치를 정확히 나타낸다. URI도 엔드포인트가 될 수 있지만, 주로 URL이 엔드포인트 역할을 수행한다.

 

URN(Uniform Resource Name): 인터넷상의 자원을 고유하게 식별하기 위한 이름 체계

URN은 자원의 위치에 의존하지 않고, 지속적으로 유효한 고유한 식별자를 제공하는 것을 목표로 한다. 예를 들어, urn:isbn:0451450523은 특정 도서의 ISBN을 기반으로 한 URN으로, 해당 도서가 어디에 위치하든지 간에 동일한 URN으로 식별될 수 있다.

URI, URL, URN은 모두 인터넷 표준인 RFC(Request for Comments)에 의해 정의되고 관리된다. 이는 전 세계적으로 일관된 방식으로 자원을 식별하고 접근할 수 있도록 보장한다.

 

 

실제 활용 사례

1. 웹 브라우징: URL
웹 브라우저는 주로 URL을 사용하여 웹 페이지에 접근한다. 예를 들어, https://www.google.com은 구글의 메인 페이지에 접근하기 위한 URL이다.

 

2. API 통신: URL
RESTful API에서는 URL을 통해 특정 자원에 접근하거나 조작한다. 예를 들어, https://api.example.com/users/123은 사용자 ID가 123인 사용자 정보를 가져오기 위한 URL이다.

 

3. 도서 식별: URN
도서관 시스템에서는 URN을 사용하여 도서를 고유하게 식별할 수 있다. 예를 들어, urn:isbn:978-3-16-148410-0은 특정 도서의 ISBN을 기반으로 한 URN이다.

 

4. 전자상거래: URL
제품 페이지를 식별하고 접근하기 위해 URL이 사용된다. 예를 들어, https://www.example.com/products/567은 특정 제품의 상세 정보를 제공하는 URL이다.

 

 

 

URI, URL, URN은 인터넷상에서 자원을 식별하고 접근하는 데 필수적인 개념으로, 각각의 역할과 특성을 이해하는 것이 중요하다. URI포괄적인 자원 식별자 개념을 제공하며, URL자원의 위치와 접근 방법을 명시하고, URN자원의 고유한 이름을 통해 식별한다. 이들 개념을 정확히 이해하고 적절히 사용하는 것은 웹 개발과 인터넷 서비스 제공에 있어 필수적인 요소이다. 앞으로도 웹 기술의 발전과 함께 URI, URL, URN의 역할과 중요성은 더욱 커질 것이며, 이를 바탕으로 더욱 효율적이고 안전한 인터넷 환경이 조성될 것으로 기대된다.

 

'프레임워크 > 웹 지식' 카테고리의 다른 글

CRUD  (1) 2024.10.05
API와 RESTful API  (3) 2024.10.05
엔드포인트(Endpoint)에 대해서  (1) 2024.10.05
사용자 경험(UX)에 대해서  (1) 2024.10.05
프론트엔드 개발자가 탄생하게 된 배경  (0) 2024.10.04