인터넷, 웹
- 인터넷: 통신 기반망
- 웹(WWW): 인터넷 위에서 동작하는 서비스
URI, URL
- URI: 인터넷 자원 식별자 전체
- URL: URI에 포함되는 개념, 자원의 위치 및 접근 방법을 나타냄
사전적인 의미일 뿐, 실질적으로 두 용어를 엄격히 구분하여 사용하지는 않음
클라이언트, 서버
- 클라이언트: 요청(Request)을 보내는 쪽
- 서버: 요청에 응답(Response)하는 쪽
서버 간의 통신에선 서버 앱 역시 클라이언트 역할을 할 수 있다
예를 들어 사용자의 요청에 응답하는 서버 역시, DB에 요청을 할 때에는 클라이언트가 된다
URL 구성 요소

| 구조명 | 구조 예시 | 역할 |
|---|
| 스킴 | https | 사용할 통신 방식 |
| 호스트 | shop.example.com | 접속할 서버의 이름 |
| 포트 | 443 | 서버 안의 서비스 번호 |
| 경로 | /products/42 | 요청할 자원 |
| 쿼리 | color=blue&sort=price | 서버에 전달할 추가 조건 |
| 프래그먼트 | reviews | 받은 문서 안에서 이동할 위치 |
- 하나의 컴퓨터 안에 여러 서버가 존재할 수 있다. 호스트는 컴퓨터를, 포트는 그 안의 특정 서버를 가리킨다.
- 쿼리는 앞의 ?로 구분한다.
- 프래그먼트는 앞의 #로 구분한다. 프래그먼트는 보통 프론트엔드에서 처리하는 영역이다.
도메인 네임, IP 주소
- 도메인 이름: 서버의 이름
- IP 주소: 서버의 주소
- DNS(Domain Name System): 도메인 이름에 대응되는 IP 주소를 찾아주는 시스템
HTTP, HTTPS
- HTTP: 웹에서 브라우저와 서버가 요청과 응답을 주고받는 규칙
- HTTPS: HTTP + TLS, 보안 기술이 더해진 프로토콜
- 암호화, 인증, 무결성 제공
기본적으로 HTTP는 80포트, HTTPS는 443 포트를 사용한다.
일반적인 웹페이지의 주소에 포트 번호가 없는 것은 http, https의 기본 포트를 주소에서 생략하기 때문