인터넷과 떼어 놓을 수 없는 세상에서 ‘URL’이라는 말, 보통 “웹사이트 주소”라고 부르죠.

그런데 가끔 ‘URI’나 ‘URN’이라는 낯선 단어들도 보이는데,


이 셋은 대체 무슨 차이가 있을까? 개발자인 나도 처음엔 헷갈렸던 개념이라, 정리해두려한다! 😁


URI란?

URI (Uniform Resource Identifier)
👉 “인터넷 상의 자원을 식별(Identify) 하는 통합 이름”

쉽게 말해서, 인터넷 어딘가에 있는 ‘무언가’를 가리키는 이름표라고 생각하면 된다. 

예를 들어,

  • 웹사이트 주소
  • 이메일 주소
  • 파일 경로
    이런 것도 모두 URI의 한 종류이다. 

즉, URI는 “무언가를 가리키는 전체 개념이라고 보면 된다. 


URL이란?

URL (Uniform Resource Locator)
👉 “자원의 위치(Location)를 알려주는 URI의 한 종류”

‘Locator’는 위치를 알려준다는 뜻이다. 
그래서 URL은 단순히 “이 자원이 어디에 있어요!” 라고 알려주는 주소이다.

예를 들어:

https://www.example.com:8080/path/page.html?query=test#section2

이 주소를 쪼개보면:


 

부분 의미
https 프로토콜 (어떤 방법으로 접근할지)
www.example.com 도메인 (어디 서버인지)
:8080 포트번호 (선택사항)
/path/page.html 경로
?query=test 쿼리 (추가 정보)
#section2 프래그먼트 (문서 내 특정 위치)

→ 이 전체가 URL,
그리고 이 URL은 URI의 한 종류


URN이란?

URN (Uniform Resource Name)
👉 “위치와 상관없이 자원의 이름(Name) 자체로 식별하는 URI”

예를 들어,
도서관의 책은 어디 선반에 있든 ISBN 번호로 구분할 수 있듯이 
이처럼 ‘어디 있느냐’가 아니라 ‘무엇이냐’로 식별하는 것이 URN이다.

urn:isbn:9783161484100

이건 “ISBN 9783161484100번 책”이라는 고유 이름을 의미합니다.
책이 어느 웹사이트에 있든 상관없이, 이 이름만으로 그 자원을 식별할 수 있어요.


세 가지의 관계 정리

구분 이름 의미 예시
URI 통합 자원 식별자 자원을 식별하기 위한 전체 개념 https://example.com/index.html
urn:isbn:9783161484100
URL 위치 지정자 자원이 어디 있는지를 나타냄 https://example.com/index.html
URN 이름 지정자 자원의 이름으로만 식별 urn:isbn:9783161484100

👉 URIURLURN을 포함하는 더 넓은 개념임! 

 

이미지로 본다면은 이런 느낌? 


마무리

  • URI : 인터넷 자원의 “식별자” 전체 개념
  • URL : 자원의 “위치”로 식별하는 방법
  • URN : 자원의 “이름”으로 식별하는 방법

 

반응형
LIST

+ Recent posts