WEB HTTP/HTTP 기본

URI? URL? URN? [웹HTTP]

진이최고다 2023. 3. 7. 00:57

URI(Uniform Resource Identifier)

"URI는 로케이터(locator), 이름(name) 또는 둘 다 추가로 분류될 수 있다."

 

🔷 URI 단어 뜻

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

🔹Resource : 자원, URI로 식별할 수 있는 모든 것(제한 없음)

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

 

🔷 URL, URN 단어 뜻

🔹 URL - Locator : 리소스가 있는 위치를 지정

🔹 URN - Name : 리소스에 이름을 부여

🔹 위치는 변할 수 있지만, 이름은 변하지 않는다.

🔹 urn:isbn:8960777331 (어떤 책의 isbn URN)

🔹 URN 이름만으로 실제 리소스를 찾을 수 있는 방법이 보편화 되지 않음

🔹 통합적으로  URI를 URL과 같은 의미로 이야기한다.


URI 분석

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

 

 

URL 전체 문법

scheme://[userinfo@]host[:port][/path][?query][#fragment]
https://www.google.com:443/search?q=hello&hl=ko

• 프로토콜(https) == scheme

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

• 포트 번호(443)  == [:port]

• 패스(/search) == [/path]

• 쿼리 파라미터(q=hello&hl=ko == [?query]


scheme == https

주로 프로토콜 사용되며,

프로토콜: 어떤 방식으로 자원에 접근할 것인가 하는 약속 규칙이 이있다.

예) http, https, ftp 등등 있으며 , http는 80 포트, https는 443 포트를 주로 사용한다,

http/ https 쓸 경우  포트는 생략 가능하다.

https는 http에 보안 추가된 프로토콜이다. (HTTP Secure)


[userinfo@]

URL에 사용자정보를 포함해서 인증할때 쓰이지만, 거의 사용하지 않는다.


host == www.google.com  

호스트명, 보통 도메인명 또는 IP 주소를 직접 입력할 수 있다.


PORT == 443

접속 포트, 일반적으로 생략이 가능하, 생략시 http는 80, https는 443

(보통 웹 브라우저에서는 생략하지만, 특정 서버에 접속할 경우 입력한다.)


path == search

리소스가 있는 경로(path)이며,  계층적 구조로 되어있다.

예) • /home/file1.jpg  (파일명 디렉토리 )

     • /members (회원정보를 보여주는 컬렉션 디렉토리)


query == ?q=hello&hl=ko

key=value 형태이며, 

?로 시작해서, &로 추가 가능 ?keyA=valueA&keyB=valueB 계속 이름을 붙일수 있다.

query parameter, query string 등으로 불림, 웹서버에 제공하는 파라미터, 문자 형태

 

fragment

html 내부 북마크 등에 사용되며,

서버에 전송하는 정보 아님  잘 사용하지않는다.


웹 브라우저 요청흐름

012345
웹 브라우저 요청 흐름순서

 

 

 

출처 : 인프런 - 모든 개발자를 위한 HTTP 웹 기본지식 by 우아한형제 김영한이사님