본문 바로가기
[이직 면접] 질의 응답

[Web 개발 기본] URI / URL에 대해서 말씀하세요.

by 막개발자 2021. 1. 4.

# 질의 응답 상황

[면접관]

지원자님 Web 개발을 주로 하셨는데 URI와 URL에 대해서 간략하게 설명해주세요.

 

[막개발자] 

네 우선 URI가 URL 보다 더 상위개념 입니다.

URI는 인터넷상의 자원의 식별자 이고
URL은 인터넷상의 자원의 위치를 의미합니다.


프로토콜(Protocol), 도메인(Domain), 포트(Port), 패스(Pass) 까지가 URL이고,
거기에 쿼리스트링(Query String)까지 들어가면 URI 입니다.

 

 

# 상세 설명

1. URI (Uniform Resource Identifier)와 URL (Uniform Resource Locator)

1. URI (Uniform Resource Identifier)

URI는 인터넷에서 리소스를 식별하는 데 사용되는 문자열입니다.
리소스는 웹 페이지, 이미지, 동영상, 파일 등 인터넷에 존재하는 모든 것을 의미합니다.

구성 요소:

  • 스킴(Scheme): 리소스에 접근하는 프로토콜 (http, https, ftp 등).
  • 식별자: 리소스를 식별하는 정보 (예: 도메인, 경로, 쿼리 등).

역할:

  • 리소스를 고유하게 식별하기 위해 사용.

:

2. URL (Uniform Resource Locator)

URL은 URI의 하위 개념으로, 특정 리소스의 위치를 명확하게 나타냅니다.
즉, URL은 리소스를 가리키는 데 초점이 맞춰져 있습니다.

구성 요소:

  • 스킴(Scheme): 리소스에 접근하기 위한 프로토콜 (http, ftp 등).
  • 호스트명(Host): 리소스가 위치한 서버의 주소 (example.com).
  • 경로(Path): 서버 내에서 리소스의 경로 (/resource).
  • 포트번호(선택적): 특정 포트 지정 (:8080).
  • 쿼리(Query): 추가적으로 필요한 데이터 (?id=123).

역할:

  • 리소스의 위치를 지정하고 이를 접근하기 위한 경로를 제공합니다.

:

3. URI와 URL의 관계

모든 URL은 URI에 포함되지만, 모든 URI가 URL인 것은 아닙니다.
URI는 리소스를 식별하기 위한 범용 개념이고, URL은 리소스의 위치를 명시한 URI의 특정 사례입니다.

4. 차이점

 

특징 URI URL
정의 인터넷 리소스를 식별하기 위한 문자열 인터넷 리소스의 위치를 명확히 지정하는 문자열
포함 관계 URL과 URN을 포함하는 상위 개념 URI의 하위 개념
목적 리소스의 식별 리소스의 위치 지정 및 접근
형식 다양한 형태 (mailto:, isbn:, https: 등) 리소스의 경로와 접근 방법을 포함 (https://, ftp:// 등)
호스트명 포함 여부 반드시 포함되지 않을 수 있음 (mailto:, urn:isbn:... 등) 반드시 포함 (https://example.com/resource)
사용 예시 mailto:someone@example.com, urn:isbn:0451450523 https://example.com/resource?id=123
기능적 역할 리소스의 고유 식별자 역할 리소스에 대한 접근 경로 제공
범용성 더 추상적이고 광범위한 식별 기준 위치 정보로 구체적이고 명시적

5. URI와 URL의 예제 비교

URI 예제

  • https://example.com/resource?id=123
    → URL이자 URI. (리소스의 위치를 포함하여, 식별과 접근이 모두 가능함.)
  • urn:isbn:0451450523
    → URI만 해당. (리소스의 위치는 없고, 리소스를 고유하게 식별하는 정보만 포함.)

URL 예제

결론

  • URI: 인터넷 리소스의 식별. (포괄적 개념)
  • URL: 인터넷 리소스의 위치를 지정하여 접근 가능. (특수 사례)