웹 주소 체계 URI, URL, URN의 차이점은 무엇일까?

2025. 6. 18. 01:13·CS

1. URI (Uniform Resource Identifier)


웹 개발을 하면, 웹 페이지, 이미지, 동영상, API 등 많은 자원을 다룬다.

이처럼 인터넷 상에서 수많은 자원을 식별하고 찾아내기 위해 사용되는 문자열이 URI이다.

 

URI는 Uniform Resource Identifier의 약자로, 통합 자원 식별자라고도 한다.

어떤 자원을 지칭하는 이름표 역할을 한다.

 

URI는 URL과 URN을 포괄하는 상위 개념으로,

자원을 식별하는 모든 방식을 포함하는 가장 넓은 개념이다.

 

 

 

2. URL (Uniform Resource Locator)


URI가 자원을 식별하는 모든 방식을 포괄하는 넓은 개념이라면,

URL(Uniform Resource Locator)은 자원이 어디에 위치 하고 있는지 알려주는 URI의 한 종류이다.

HTTP, FTP등 프로토콜을 사용하여 자원의 위치를 지정한다.

 

 

(1) URL의 구성요소


[스키마] :// [호스트] : [포트] / [경로] ? [쿼리스트링] # [프래그먼트]

 

구성 요소
설명
스키마 Scheme 자원에 접근하는데 사용될 프로토콜을 지정
http, https, ftp 등
호스트 Host 자원이 위치한 서버의 도메인 이름 또는 IP 주소
포트 Port (선택 사항) 서버 내에서 자원에 접근할 특정 포트 번호를 지정
기본 포트(HTTP : 80, HTTPS : 443)인 경우 생략될 수 있음
경로 Path 서버 내 자원의 디렉토리 및 파일 이름 등 정확한 위치
쿼리 스트링 Query String (선택사항) 자원에 추가적으로 전달되는 매개변수
`?`로 시작하며 `이름=값` 형태로 & 로 연결
프래그먼트 Fragment HTML 페이지 내 특정 섹션(앵커)를 나타냄
서버로 전송 되지 않고 브라우저 내부에서 사용

 

 

(2) URL의 특징


URL의 가장 큰 특징은 자원의 위치를 명확히 알려준다는 점이다.

또한, 자원에 접근하기 위해 특정 프로토콜을 필수로 포함해야 한다.

자원의 위치를 알려주기 때문에, 위치가 변경되면 URL도 변경되어야 한다.

 

 

 

3. URN (Uniform Resource Name)


URL이 자원의 위치를 나타낸다면, URN은 자원의 고유한 이름을 나타낸다.

자원의 위치와 상관 없이 자원의 이름을 식별하는 방식이다.

이러한 특성으로 자원의 위치가 변경되어도 동일한 식별자를 유지할 수 있다.

 

 

(1) URN의 구성요소


urn : [NID] : [NSS]
구성 요소 설명
urn URN임을 나타내는 접두사
NID Namespace IDentifier URN의 구문과 해석 방식을 결정하는 네임 스페이스를 정의
예) isbn(국제 표준 도서 번호), uuid(범용 고유 식별자)
NSS Namespace
Specific String
지정된 NID내에서 자원을 고유하게 하는 식별 문자
예) 0451450523 (ISBN 번호)
6e8bc430-9c3a-11d9-9669-0800200c9a66 (UUID)
URN 예시
urn:isbn:0451450523
urn:uuid:6e8bc430-9c3a-11d9-9669-0800200c9a66

 

 

(2) URN의 특징


자원의 위치와 관계 없이 동일한 URN으로 식별된다.

자원의 물리적 위치나 접근 방식이 변화하여도 URN은 변하지 않는다.

 

URN 자체가 자원을 가져오지 않기 때문에 URN으로 자원을 접근하기 위해선

URL 등의 실제 자원의 위치로 변환해주는 URN Resolution 시스템이 필요하다.

 

 

 

4. URI, URL, URN 총정리


 

 

 

728x90
저작자표시 비영리 변경금지 (새창열림)
'CS' 카테고리의 다른 글
  • IP 주소 할당 방식 : 동적 vs 정적 방식의 차이와 DHCP를 이용한 IP 주소 할당 과정
  • 트랜잭션의 4가지 핵심 속성 : ACID에 대해 간단하게 알아보기
leonie.
leonie.
  • leonie.
    leveloper
    leonie.
  • 글쓰기 관리
    • 분류 전체보기 N
      • Language
        • Java
      • Git
      • CS
      • CodingTest
        • [프로그래머스] 자바
      • Information
      • Framework
        • Spring
      • DBMS
        • Redis
        • SQL
      • AWS
      • OS
        • Mac
      • 자격증 N
        • 정보처리기사 N
      • 회고
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Java
    정보처리기사
    알고리즘
    스프링
    정처기필기
    프로그래머스
    springboot
    자바
    코딩테스트
    정처기
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
leonie.
웹 주소 체계 URI, URL, URN의 차이점은 무엇일까?
상단으로

티스토리툴바