[URI와 웹 브라우저 요청 흐름]
2025. 7. 2. 13:34ㆍHTTP 모든 지식
✅ URI (Uniform Resource Identifier)
- URI는 웹에서 자원을 식별하는 통합 개념입니다.
- URI는 크게 두 가지로 분류됩니다:
- Uniform:리소트 식별하는 통인된 방식
- Resource: 자원, URI로 식별할 수 있는 모든 것(제한 없음)
- Identifier: 다른 항목과 구분하는데 필요한 정보
- URL (Uniform Resource Locator): 자원의 위치(주소)를 나타냄
예: https://www.example.com/index.html - URN (Uniform Resource Name): 자원의 이름(고유 식별자)을 나타냄
예: urn:isbn:978-3-16-148410-0
- URL (Uniform Resource Locator): 자원의 위치(주소)를 나타냄
👉 즉, URI는 "자원의 위치(URL)" 또는 "자원의 이름(URN)", 또는 그 둘 모두를 포함할 수 있는 개념입니다.

URL 전체 문법
-scheme://[userinfo@]host[:port][/path][?query][#fragment]
-https://www.google.com:443/search?q=hello&hl=ko
✅ 구성 요소 설명
| scheme | 프로토콜 (예: http, https, ftp, mailto) |
| userinfo@ | (선택) 사용자 정보 (예: id:pw@) |
| host | 도메인 또는 IP 주소 (예: www.google.com) |
| :port | (선택) 포트 번호 – 생략 시 기본값 사용 → http: 80, https: 443 |
| /path | 서버 내 자원의 경로 (예: /search) |
| ?query | (선택) 요청 파라미터 (예: q=hello&hl=ko), query parameter, query string 등으로 불림(숫자도 문자열로 변환) |
| #fragment | (선택) 문서 내 특정 위치 (예: #section1) |
✅ 프로토콜(Scheme)
- URL에서 가장 앞에 위치하며, 자원에 접근하는 방식을 지정
- 대표적인 예시:
- http : HyperText Transfer Protocol
- https : 보안이 추가된 HTTP (HTTP Secure)
- ftp : 파일 전송
- mailto : 이메일 주소
- tel : 전화번호 링크
🔐 HTTPS란?
- HTTPS = HTTP + 보안(Secure)
- SSL/TLS 암호화를 통해 데이터 도청/변조 방지
- http는 80번 포트, https는 443번 포트 사용
- 포트 번호는 생략 가능 (브라우저가 기본값 자동 사용)
🌐 웹 브라우저의 요청 흐름

✅ 1. DNS 조회
먼저 브라우저는 www.example.com 이라는 도메인을 IP 주소로 변환하기 위해 DNS 조회를 수행합니다.
예를 들어, DNS 응답으로 200.200.200.2 라는 IP 주소를 받았다고 가정합시다.
그리고 https:// 프로토콜이 사용되었으므로, **기본 포트는 443번**이 됩니다.
즉, 브라우저는 다음과 같은 주소를 대상으로 요청을 시도합니다:
HTTPS이기 때문에, 브라우저는 먼저 TLS(SSL) 핸드셰이크를 통해 보안 연결을 설정합니다.
그 후, 아래와 같은 형태의 HTTP 요청 메시지를 서버에 전송합니다:
GET / HTTP/1.1 Host: www.example.com User-Agent: Chrome/xx.x Accept: */*
요약하자면, 사용자가 URL을 입력하는 순간 브라우저는 다음과 같은 흐름으로 동작합니다:
- DNS 조회 → IP 주소 획득 (예: 200.200.200.2)
- HTTPS인 경우 443 포트로 TLS 연결
- HTTP 요청 메시지를 구성하여 전송

'HTTP 모든 지식' 카테고리의 다른 글
| HTTP 헤더 캐시와 조건부 요청 (0) | 2025.07.06 |
|---|---|
| HTTP 상태코드 (1) | 2025.07.03 |
| HTTP 메서드 (0) | 2025.07.02 |
| HTTP 지식 모든 것 (0) | 2025.07.02 |