한국어

URL 파서 — 주소를 프로토콜·호스트·경로·쿼리로 분해하기

URL 구성 요소 분해 (디코딩, 한글 도메인, 쿼리 파라미터 편집 후 URL 재조립)

브라우저에서 처리 · 서버로 전송되지 않음

소개

긴 URL을 눈으로 읽으면 어디까지가 호스트이고 어디부터가 쿼리인지 헷갈립니다. 이 도구는 주소를 프로토콜, 사용자 정보, 호스트, 포트, 경로, 쿼리, 해시로 나누고 퍼센트 인코딩된 값은 읽을 수 있게 디코딩해 보여 줍니다. 쿼리 파라미터는 표에서 바로 고칠 수 있습니다.

사용법

  1. URL 입력 칸에 https://로 시작하는 전체 주소를 붙여 넣습니다.
  2. “URL 구성 요소” 표에서 각 부분의 원래 값과 디코딩된 값을 확인하고 필요한 값을 복사합니다.
  3. “쿼리 파라미터” 표에서 키와 값을 고치거나 삭제 버튼, 추가 버튼으로 파라미터를 바꿉니다.
  4. 고친 결과는 입력 칸의 URL에 곧바로 반영되므로 그대로 복사해 쓸 수 있습니다.

기준

  • 해석은 WHATWG URL 표준을 구현한 브라우저의 URL 객체가 합니다. 직접 만든 파서가 아니므로 브라우저와 결과가 일치합니다.
  • 구성 요소는 protocol, username, password, hostname, port, origin, pathname, search, hash입니다. 기본 포트는 빈 값으로 나옵니다.
  • 퍼센트 인코딩(%ED%95%9C)은 UTF-8로 디코딩하며, 잘못된 인코딩이면 원문을 그대로 둡니다.
  • 한글 도메인은 퓨니코드(RFC 3492) 규칙으로 xn-- 형태와 유니코드 형태를 서로 바꿔 보여 줍니다.
  • 쿼리 파라미터는 URLSearchParams로 읽고 씁니다. 같은 키가 여러 번 나와도 순서를 유지하고, 값이 없는 키(?flag)는 빈 값으로 보여 줍니다.
  • 스킴이 없거나 호스트가 비었거나 공백이 섞인 입력은 오류 문구를 보여 주고 아무것도 실행하지 않습니다. 이 도구는 주소에 접속하지 않습니다.

예시

입력 결과
https://münchen.de/straße 호스트 xn--mnchen-3ya.de, 유니코드 münchen.de
https://예시.한국/경로?이름=홍 길동#해시 경로 /%EA%B2%BD%EB%A1%9C, 디코딩 /경로, 파라미터 이름=홍 길동
https://example.com:443/a 포트 비어 있음(기본 포트)
https://e.com/?q=%F0%9F%98%80 q = 😀

참고

  • 주소에 사용자 이름이나 비밀번호가 들어 있으면 안내 문구를 함께 보여 줍니다. 공유하는 화면에는 올리지 마세요.
  • mailto:나 ftp: 같은 다른 스킴도 구성 요소로 나눠 볼 수 있습니다.

자주 묻는 질문

어떤 규칙으로 URL을 해석하나요?

브라우저에 내장된 WHATWG URL 표준(`URL` API)을 그대로 씁니다. 브라우저가 주소창이나 링크에서 해석하는 방식과 같아서 대문자 호스트의 소문자 변환, 기본 포트(https 443, http 80) 생략, 경로의 `..` 정리가 자동으로 적용됩니다.

한글 도메인은 어떻게 보이나요?

주소에 한글 도메인이 있으면 표준 규칙에 따라 퓨니코드(`xn--`로 시작하는 ASCII 형태)로 바뀌어 호스트(ASCII) 항목에 나오고, 호스트(유니코드) 항목에는 원래 읽히는 모습이 나옵니다. 이미 퓨니코드로 쓴 주소를 넣으면 반대로 한글로 풀어 줍니다.

스킴이 없는 example.com/path는 왜 오류인가요?

URL 표준은 `https://` 같은 스킴이 있어야 완전한 URL로 봅니다. 스킴이 없으면 어떤 프로토콜인지 알 수 없어 오류로 두고, 앞에 스킴을 붙이라고 안내합니다.

쿼리 파라미터를 고치면 원래 URL이 바뀌나요?

표에서 키나 값을 고치거나 파라미터를 추가·삭제하면 위의 URL 입력칸이 새 주소로 바뀝니다. 경로와 해시는 그대로 유지되고, 쿼리는 URLSearchParams 규칙(공백은 +, 한글은 %XX)으로 다시 인코딩됩니다.

필요한 도구가 있나요?