Http #2. URI

김동욱·2022년 3월 1일
0
post-thumbnail

1. URI

1-1. URI

uri는 Uniform Resource Identifier 통합 자원 식별자라는 뜻으로 인터넷에 있는 자원을 나타내는 유일한 주소이다. URI의 존재는 인터넷에서 요구되는 기본조건으로서 인터넷 프로토콜에 항상 붙어 다닌다.

URI의 하위개념으로 URL, URN 이 있다.

1-2. URL

URL(Uniform Resource Locator)은 네트워크 상에서 자원이 어디 있는지를 알려주기 위한 규약이다. 즉, 웹 페이지를 찾기위한 주소를 말한다. 우리가 흔히 알고있는 인터넷 주소가 UR이고 웹 사이트 주소로 알고 있지만, URL은 웹 사이트 주소뿐만 아니라 컴퓨터 네트워크상의 자원을 모두 나타낼 수 있다. 그 주소에 접속하려면 해당 URL에 맞는 프로토콜을 알아야 하고, 그와 동일한 프로토콜로 접속해야 한다.

URL: https://www.google.com/box/kimdonguk

1-3. URN

URN은 콘텐츠를 이루는 한 리소스에 대해, 그 리소스의 위치에 영향 받지 않는 유일무이한 이름 역할을 한다. 이 위치 독립적인 URN은 리소스를 여기저기로 옮기더라도 문제없이 동작한다. 리소스가 그 이름을 변하지 않게 유지하는 한, 여러 종류의 네트워크 접속 프로토콜로 접근해도 문제없다. 예를 들어, 다음의 URN은 인터넷 표준 문서 'RFC 2141'가 어디에 있거나 상관없이 그것을 지칭하기 위해 사용할 수 있다.

URN: urn:ietf:rfc:2141

1-4. 정리

URI는 URL, URN을 포함하는 상위 개념이고 URL은 자원의 위치를 알려주고 URN을 자원의 이름을 알려준다. 위치는 변할 수 있지만, 이름은 변하지 않는다. 하지만 아직은 URN이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않았다. 그래서 현제는 URL을 많이 사용하고 있다.


2. URL

URL을 분석해보자

https://www.google.com/search?q=hello&hl=ko

위의 URL의 각 영역은 밑의 문법을 토대로 만들어졌다.

scheme://[userinfo@]host[:port][/path][?query][#fragment]

  • scheme: 프로토콜이 들어가는 부분(https)

    프로토콜이란 어떤 방식으로 자원에 접근할 것인가를 정한 규칙(http, ftp)

  • userinfo: URL에 사용자정보를 포함해서 인증(거의 사용ㄴㄴ)

  • host: 호스트명(www.google.com)

  • port: 포트번호

    http는 80 https는 443포트를 주로 사용(생략 가능)

  • path: 패스, 리소스의 경로와 구조(/search)

  • query parameter or query string: key=value의 형태, ?로 시작 &으로 추가 가능(?q=hello&hl=ko)

  • fragment: html내부 북마크 등에사용, 서버에 전송ㄴㄴ

profile
안녕하세요. 부산에서 근무하고 있는 프론트엔드 개발자 김동욱입니다. 영어 공부 겸 개발 공부를 위해서 글을 작성하고있습니다.

0개의 댓글