[Programming] URI URL URN

황인용·2020년 1월 23일
0

Programming

목록 보기
4/8

URI? URL? URN?

웹프로그래밍 뿐만 아니라 웹에 대해 관심이 생기시 시작하면 제일 헷갈리는 단어와 용어가 URI와 URL일 것이다. 듣다보면 URN이라는 것도 듣게 되는데, 그 차이가 무엇이며 내가 흔히 알고 있는 URL은 무엇인지 알아보자.

URI(Uniform Resource Idntifier)

URI(Uniform Resource Locator)는 말 그대로 통합 자원 식별자(ID)로써, 인터넷의 주소 같은 것으로, 정보 리소스를 고유하게 식별하고 위치를 지정할 수 있다.

URI가 갖고 있는 형태가 URL과 URN 이다.

URL(Uniform Resource Locator)

URL(Uniform Resource Locator)은 특정 서버의 한 리소스에 대한 구체적인 위치를 서술한다.

URL은 리소스가 정확히 어디에 있고 어떻게 접근할 수 있는지 분명히 알려준다.
예를들면 다음과 같다.

http://example.com/mypage.html - 실제 사이트 URL
http://img.naver.net/static/www/dl_qr_naver.png - 네이버 앱QR코드의 이미지에 대한 URL
http://news.naver.com/main/main.nhn?mode=LSD&mid=shm&sid1=104
- 네이버뉴스에서 분류중 "세계"주제의 기사에 대한 URL

URN(Uniform Resource Name)

URN(Uniform Resource Name)은 콘텐츠를 이루는 한 리소스에 대해, 그 리소스의 위치에 영향 받지 않는 유일무이한 이름을 말한다.

이 위치 독립적인 URN은 리소스를 여기저기 옮기더라도 문제없이 동작한다.

리소스가 그 이름을 변하지 않게 유지하는 한, 여러종류의 네트워크 접속 프로토콜로 접근해도 문제가 없다.

따라서 무엇인지를 말하는 What의 개념으로 서로 중복되지 않는 유일한 값이어야한다

예를들면, 다음과 같다

urn:isbn:0451450523 - URN으로 1926년에 출간된 the Last Unicorn의 도서식별번호
urn:oid:2.16.840 - URN으로 미국을 의미하는 OID이다

정리

  • URI(Uniform Resource Identifier)
    - 통합 자원 식별자
    - 인터넷에 있는 자원을 나타내는 유일한 주소
    - URI의 존재는 인터넷에서 요구되는 기본조건으로 인터넷 프로토콜이 항상 붙어다님
    (ex. http://www.naver.com (http프로토콜임을 명시하고 있음)
    - URI의 하위개념으로 URL과 URN이 존재

  • URL(Uniform Resource Locator)
    - 자원

    • 예전에는 URI가 가르키는게 파일소스
    • 요즘에는 Rewrite등의 아파치, 톰켓등의 핸들러 때문에 자원이라고 부름
    • 웹사이트 주소가 요청하는 파일이라기보다는 구분자로 보는것
    • 웹 상에서 서비스를 제공하는 각 서버들에 있는 파일의 위치를 표시하기 위한 것
      (ex. http://blog.com/work/test.pdf 는 blog.com서버에서 work폴더안의 test.pdf 파일을 요청)
  • URN(Uniform Resource Name)
    - 위치와 상관없이 리소스의 이름값을 이용해서 접근하는 방식

    • 노출된 URL은 http://blog.com/work/222 인데, http://blog.com/work/list/222 으로 보내면 404 response를 받는다. 이를 보완하기위해 위치 정보와 무관한 리소스를 찾게 해주게 하는 방식
    • 해당 리소스의 위치정보가 아닌 실제 리소스의 이름으로 사용하는 방식
      (ex. urn:2.19.222 )

profile
dev_pang의 pang.log

0개의 댓글