URL

인터넷에서 자원(Resource)의 위치(주소)를 나타내는 문자열로, 브라우저가 서버에서 자원을 찾을 수 있도록 경로를 지정합니다.

구성 요소

https://www.example.com:8080/users/1?name=kim#section
─────   ───────────────  ────  ───────  ────────  ───────
scheme      host         port   path    query   fragment
요소필수 여부설명예시
schemeO프로토콜https, http, ftp
hostO서버 주소www.example.com
portX포트 번호 (생략 시 기본값)8080
pathX자원 경로/users/1
queryX추가 파라미터 (?로 시작)?name=kim
fragmentX페이지 내 특정 위치 (#로 시작)#section

기본 포트 번호

http  → 80  (생략 가능)
https → 443 (생략 가능)
ftp   → 21

URL vs URI vs URN

URLURIURN
개념위치로 식별식별자 전체이름으로 식별
관계URI의 하위상위 개념URI의 하위
예시https://example.comURL + URNurn:isbn:12345

자원 이동 시 문제

URL은 위치 기반이므로
자원의 위치가 바뀌면 → URL도 바뀜 → 링크 깨짐
(이를 보완하기 위해 URN 개념 존재)

URL은 URI의 하위 개념으로, 모든 URL은 URI이지만 모든 URI가 URL은 아닙니다.

CSLOG에서 보기