Having

[Web] URI, URL, URN 차이점과 URL 구조 본문

Web

[Web] URI, URL, URN 차이점과 URL 구조

GHM 2023. 1. 17. 00:35
  • URI
  • URL (구조)
  • URN

 

URI (Uniform Resource Identifier)

Uniform : 리소스를 식별하는 통일된 방식

Resource : 자원 (URI로 식별할 수 있는 모든 것)

Identifier : 다른 항목과 구분하는데 필요한 정보

 

  • 자원을 식별하는 식별자를 통칭하며 URL과 URN을 포함하는 상위 개념이다.
  • 모든 URL, URN은 URI이지만, 모든 URI는 URL, URN이 아니다.
  • scheme는 URL의 경우 프로토콜이, URN은 urn 단어가 위치한다.

 

 

출처 : https://ssup2.github.io/theory_analysis/URI_URL_URN/


URL (Uniform Resource Locator

  • 위치로 리소스 식별
  • 리소스의 위치가 변경되면 URL을 사용할 수 없다.

URL 구조

출처 : https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_URL

 

  1. Scheme : 프로토콜 명시. 웹에서는 http, https 사용
  2. Domain : 통신할 서버의 도메인 명 (또는 IP 주소)
  3. Port : 통신을 위해 연결된 서버 호스트의 특정 프로세스에 접근하기 위해 필요한 번호. 일반적으로 생략 (http : 80, https : 443)
  4. Path : 리소스 경로, 계층적 구조
  5. Query String : 웹 서버로 보내는 key-value 형태의 문자열 데이터 (=쿼리 파라미터)
  6. Fragment : 앵커, 해시태그라고도 불리며, 메인 리소스 내에 존재하는 서브 리소스에 스크롤 없이 바로 접근할 때 사용
    (서버에 전송하는 정보가 아님)

 

프로토콜이란?

: 어떤 방식으로 자원에 접근할 것인지를 나타내는 약속

 

호스트란?

: 네트워크에 연결되어 있는 모든 디바이스(PC, 서버, 휴대폰, 태블릿 등)

 

URL 분석

1. https://www.inflearn.com/course/http-웹-네트워크/unit/123

2. https://www.google.com/search?q=urlocator 

 

  1 2
프로토콜 https https
도메인 www.inflearn.com www.google.com
포트번호 443 443
패스 /course/http-웹-네트워크/unit/123 /search
쿼리 스트링   q=urlocator

 

URN (Uniform Resource Name)

출처 : https://ssup2.github.io/theory_analysis/URI_URL_URN/

  • 이름으로 리소스 식별
  • 위치가 변경되면 찾지 못하는 URL의 단점을 보완하기 위해 등장
  • 스킴에 프로토콜이 아닌 urn
  • NID (Namespace Identifier) : Namespace
  • NSS (Namespace Specific String) : Namespace 내부에서 고유한 String 값

 

ex) urn:isbn:035232412 (특정 책의 isbn URN)

 


URN은 거의 사용하지 않고, URI과 URL은 혼용해서 사용

 

 

 

 

 

참고자료

https://ssup2.github.io/theory_analysis/URI_URL_URN/

https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_URL

https://danielmiessler.com/study/difference-between-uri-url/

https://www.geeksforgeeks.org/difference-between-url-uri-and-urn-in-java/