2025-09-14 14:28

Tags: 프로그래밍 기초

URL

https://user:pass@www.example.co.kr:443/products/laptops?brand=apple&sort=new#specs

구성 요소예시설명
Scheme (스키마)https**자원에 접근하는 방법(프로토콜)**을 정의합니다. ‘어떻게’ 통신할지 알려주는 부분으로, 웹 페이지는 보통 http 또는 보안이 강화된 https를 사용합니다. ftp://(파일 전송), mailto://(이메일 클라이언트 실행), file://(로컬 파일 접근) 등 다양한 스키마가 있습니다.
Authorityuser:pass@www.example.co.kr:443자원의 위치를 식별하는 데 필요한 인증, 호스트, 포트 정보를 포함합니다. Authority는 다시 세부적으로 나뉩니다.
User Infouser:pass@(선택 사항) 해당 자원에 접근하는 데 필요한 사용자 이름과 비밀번호입니다. 보안상 취약하여 현재는 거의 사용되지 않습니다.
Host (호스트)www.example.co.kr자원이 위치한 서버의 주소입니다. 사람이 읽기 쉬운 도메인 네임(google.com)이나, 컴퓨터가 이해하는 IP 주소(192.168.0.1)가 올 수 있습니다.
Port (포트):443(선택 사항) 서버 내에서 실행되는 특정 프로그램(프로세스)에 접근하는 ‘문’ 번호입니다. 각 스키마는 표준 포트를 가지고 있어(http: 80, https: 443) 보통 생략됩니다. 다른 포트를 사용할 때만 명시적으로 적습니다.
Path (경로)/products/laptops호스트 서버 내에서 원하는 자원의 **구체적인 위치(파일 경로)**를 나타냅니다. 마치 컴퓨터의 폴더 구조와 같습니다.
Query (쿼리)?brand=apple&sort=new(선택 사항) 서버에 전달하는 추가적인 데이터입니다. ?로 시작하며, key=value 형태의 파라미터를 &로 연결하여 여러 개 전달할 수 있습니다. 주로 검색, 필터링, 정렬 기능에 사용됩니다.
Fragment (프래그먼트)#specs(선택 사항) 특정 자원 **내부의 특정 위치(앵커)**를 가리킵니다. #으로 시작하며, 이 부분은 서버로 전송되지 않고 웹 브라우저가 받
  1. 브라우저는 https를 보고 “아, 443번 포트를 통해 안전하게 통신해야겠군”이라고 생각합니다.
  2. www.example.co.kr라는 호스트 주소를 DNS 서버에 물어 실제 IP 주소를 알아냅니다
  3. 알아낸 IP 주소의 서버에 접속하여 /products/laptops 경로에 있는 자원을 요청합니다.
  4. 이때 brand=applesort=new라는 쿼리 정보를 함께 보내 “애플 브랜드의 노트북 목록을 최신순으로 정렬해서 보여줘”라고 구체적으로 요구합니다.
  5. 서버는 이 요청을 처리한 후 결과(웹 페이지)를 브라우저에 보내줍니다.
  6. 마지막으로 브라우저는 페이지를 받은 뒤 #specs 프래그먼트를 보고 ‘specs’라는 ID를 가진 요소로 화면을 스크롤해줍니다.

URL vs URI vs URN: 헷갈리는 삼형제

  • URI (Uniform Resource Identifier): 통합 자원 식별자 자원을 ‘식별’하는 가장 넓은 개념의 문자열입니다. 사람으로 치면 ‘주민등록번호’처럼 유일하게 구분할 수만 있으면 됩니다. URI는 이름(URN)이거나, 위치(URL)이거나, 둘 다일 수 있습니다. 즉, URI는 URL과 URN을 모두 포함하는 상위 개념입니다.
  • URL (Uniform Resource Locator): 통합 자원 위치 지정자 자원이 ‘어디에 있는지(위치)‘를 명확하게 알려주는 URI입니다. 우리가 흔히 쓰는 웹 주소는 모두 URL에 해당합니다. “서울시 강남구 테헤란로 123”처럼 찾아갈 수 있는 구체적인 위치를 알려줍니다.
  • URN (Uniform Resource Name): 통합 자원 이름 자원의 위치와 상관없이 ‘이름’ 자체로 자원을 유일하게 식별하는 URI입니다. 예를 들어, 모든 책이 부여받는 고유 번호인 urn:isbn:978-89-6626-178-0은 책의 이름표 같은 역할을 합니다. 이 책이 어느 서점에 있든(위치가 바뀌든) ISBN은 변하지 않습니다.