'모든 개발자를 위한 HTTP 웹 기본 지식' 강의를 보고 정리하였습니다.
URI? URL? URN? 이 익숙한 용어들, 정확히 어떤 차이가 있을까요?
URL과 URN은 URI에 포함되는 개념입니다.
이제 이 헷갈리는 아이들을 하나하나 살펴보도록 하겠습니다 🤓
URI란?
URI(Uniform Resource Identifier), 말 그대로 리소스를 식별하는 것입니다. 사람을 식별할 때 주민번호로 식별할 수 있듯이, 자원을 식별할 수 있는 방법을 말합니다.
Uniform: 리소스를 식별하는 통일된 방식
Resource: URI로 식별 가능한 모든 자원
Identifier: 다른 항목과 구분하는 데 필요한 정보
URL이란?
URL(Uniform Resource Locator), 말 그대로 리소스가 있는 위치를 지정하는 것입니다.
URN이란?
URN(Uniform Resource Name), 말 그대로 리소스에 이름을 부여하는 것입니다.
URN 이름만으로 실제 리소스를 식별할 수 있는 방법이 보편화되지 않아, 잘 사용하지 않는다고 합니다.
그래서 보편적으로 URI와 URL을 같은 의미로 말합니다.
URI 구성
URI는 'scheme://[userinfo@]/host/port [/path][?query][#fregment]'로 구성되어 있습니다.
ex) https://www.google.com/:433/search?q=hello&hl=ko
- 프로토콜 - https
- 호스트명 - www.google.com
- 포트 - 433
- 패스 - /search
- 쿼리 파라미터 - ?q=hello&hl=ko
1. scheme
👉🏻 https://www.google.com/:433/search?q=hello&hl=ko
- 주로 프로토콜 사용
- HTTP는 80 포트, HTTPS는 433 포트를 주로 사용 (포트 생략 가능)
* 프로토콜이란? 어떤 방식으로 자원에 접근할 것인지에 대한 규약
* HTTPS는 HTTP에 보안을 추가한 것 (HTTP Secure)
2. userinfo
- 사용자의 정보를 URL에 담아 인증할 때 사용
- 거의 사용하지 않음
3. host
👉🏻 https://www.google.com/:433/search?q=hello&hl=ko
- 도메인명 또는 IP 주소로 사용
4. port
👉🏻 https://www.google.com/:433/search?q=hello&hl=ko
- 접속 포트
- 일반적으로 생략, 생략 시 http = 80, https = 433
5. path
👉🏻 https://www.google.com/:433/search?q=hello&hl=ko
- 리소스 경로
- 계층형 구조
6. query
👉🏻 https://www.google.com/:433/search?q=hello&hl=ko
- key = value 형태
- ?로 시작, &으로 추가 가능
- 보통 쿼리 파라미터, 쿼리 스트림이라 부름
7. fragment
- html 내부 북마크 등에 사용
- 서버에 전송하는 정보 x
'HTTP' 카테고리의 다른 글
[HTTP] 3-1. HTTP 기본 (0) | 2025.02.25 |
---|---|
[HTTP] 2-2. 웹 브라우저 요청 흐름 (0) | 2025.02.22 |
[HTTP] 1-5. DNS (0) | 2025.02.19 |
[HTTP] 1-4. PORT (0) | 2025.02.19 |
[HTTP] 1-3. TCP, UDP (0) | 2025.02.19 |