Roel Notebook

[Web] URI, URL

by Roel Downey

Web

728x90
반응형

URI (Uniform Resource Identifier)

- 위키 : https://en.wikipedia.org/wiki/Uniform_Resource_Identifier

 

- 서버 리소스 , 통합 자원 식별자

- 인터넷 상의 자원을 식별하기 위한 문자열의 구성

 

웹 서버가 리소스를 고유하게 식별할 수 있도록 하는 것으로써, URL과 URN 두 가지가 있는데, 일반적으로 URL을 사용한다.

  • URL은 특정 서버의 한 리소스에 대해 구체적인 위치를 서술한다.
  • URN은 리소스가 어디에 위치해 있든 찾을 수 있는 방식을 말한다.  자세히 알고 싶으면 링크 클릭

 

URL (Uniform Resource Locator)

 

- 위키 : https://en.wikipedia.org/wiki/URL

 

- 통합 자원 지시자

- 인터넷 상의 자원 위치를 나타낸다.

 

<스킴>://<사용자이름>:<비밀번호>@<호스트>:<포트>/<경로>?<질의>#<프레그먼트>

 

  • 스킴 ( scheme ) : 위키
    • 그 밖에 ftp, mailto(이메일), rtsp(스트리밍)과 같은 프로토콜을 사용할 수도 있다.
    • 사용할 프로토콜을 말하며, 리소스에 어떻게 요청, 접근할 것인지를 명시한다.
    • 웹에서 주로 HTTP 프로토콜을 사용한다.

 

  • 사용자 이름과 비밀번호
    • ex) ftp://roel:55555@호스트/abc.xls
    • 어떤 서버들은 자신이 가지고 있는 데이터에 접근하기 위해서 사용자의 이름과 비밀번호를 요구한다.
    • 만약 웹 서버에서 사용자이름과 비밀번호를 요구하는 URL 스킴을 사용함에도 클라이언트가 이를 명시하지 않고 URL에 접근한다면, 기본값으로 "사용자 이름 : anonumous , 비밀번호는 브라우저에서 제공하는 기본 값"을 따르게 된다.

 

  • 호스트와 포트
    • 톰캣을 다뤄보셨다면, 로컬에서 개발을 했을 때 접근하는 URL은 localhost:숫자 이다.
    • 하나의 Host( 컴퓨터 )에는 여러 개의 Process( 프로그램 )이 각각의 Socket( 소켓 )을 사용하여 데이터 통신을 하고 있기 때문에, 각각의 소켓을 구분할 필요가 있다.
    • 이 때 소켓을 구분하는 역할을 하는 것이 Port( 포트 )이다.
      • 이처럼 서버에는 포트에 따라 소켓이 연결되어 있고, 포트 번호에 따라 다른 프로토콜이 사용될 수 있다.
    • HTTP 프로토콜에서 포트 번호를 명시하지 않으면, 80번 포트를 기본 값으로 사용한다. ( Well-known port - 링크 )

 

  • 경로

 

  • 질의
    • 개발할 때 함수를 호출하면 파라미터를 던져주는데, 이와 비슷하다고 보면 된다.
    • ex) http://localhost:3000/index?id=3&page=1
    • Query String( 쿼리 스트링 )이라고도 한다.
    • 클라이언트가 자원을 GET 방식으로 요청할 때, 필요한 데이터를 함께 넘겨 줄 목적으로 사용한다.

 

  • 프래그먼트
    • HTML에는 각각의 요소에 id 속성을 부여할 수 있는데요, URL에 프래그먼트를 전달하면 페이지가 해당 id가 있는 곳으로 스크롤이 이동하게 된다.
    • 이 글의 URL에 프래그먼트를 추가하면, 가장 마지막으로 이동할 것이다.

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형

블로그의 정보

What doing?

Roel Downey

활동하기