URL 파서
URL을 입력하면 프로토콜·호스트·경로·쿼리 파라미터·프래그먼트로 분해해서 보여줍니다. utm_source 등의 트래킹 파라미터도 자동으로 감지합니다.
URL 구조 일람
| 구성 요소 | 예시 | 설명 |
|---|---|---|
| 스킴(프로토콜) | https: | 통신 방식을 나타낸다. 웹은 http:/https:, 메일 링크는 mailto: 등을 사용하며 항상 URL 맨 앞에 온다. |
| 사용자 정보 | user:pass@ | Basic 인증 등에서 사용되는 사용자명과 비밀번호. 평문으로 남기 때문에 이 정보가 포함된 URL을 공유할 때는 주의가 필요하다. |
| 호스트명 | example.com | 접속 대상 서버의 도메인명 또는 IP 주소. |
| 포트 번호 | :8080 | 접속 대상 포트 번호. http는 80, https는 443이 기본값이라 보통 생략된다. |
| 경로 | /users/123 | 서버 내 리소스의 위치를 나타내는 계층 구조 문자열. |
| 쿼리 문자열 | ?id=123&sort=asc | "?" 뒤에 이어지는 key=value 형식의 파라미터 모음. "&"로 여러 개를 연결할 수 있다. |
| 프래그먼트 | #section2 | 페이지 내 특정 위치를 나타내는 식별자. "#" 이후는 서버로 전송되지 않고 브라우저 내에서만 처리된다. |
주요 트래킹용 쿼리 파라미터
| 파라미터명 | 설명 |
|---|---|
| utm_source | Google Analytics 등에서 유입 경로(예: newsletter·google·twitter)를 식별하기 위한 파라미터. UTM은 Urchin Tracking Module의 약자. |
| utm_medium | 유입 수단(예: email·cpc·social)을 식별하는 파라미터. utm_source와 함께 사용하는 것이 기본이다. |
| utm_campaign | 마케팅 캠페인 명칭을 식별하는 파라미터. 특정 프로모션의 효과 측정에 사용한다. |
| utm_term | 유료 검색 광고(PPC)에서 사용된 키워드를 식별하는 파라미터. |
| utm_content | 동일 광고 내에서 여러 링크·크리에이티브를 구분하기 위한 파라미터. |
| gclid | Google Ads가 발급하는 클릭 ID를 식별하는 파라미터. 전환 추적에 사용된다. |
| fbclid | Facebook 광고의 클릭 ID를 식별하는 파라미터. Meta의 광고 효과 측정에 사용된다. |
URL 파서란
URL 파서는 입력하신 URL을 스킴(프로토콜)·호스트명·포트·경로·쿼리 파라미터·프래그먼트와 같은 구성 요소로 나누어 한눈에 보여 주는 도구입니다. 긴 URL을 눈으로 좇아 손수 읽어 내는 대신, 브라우저 표준의 URL API를 써서 정확히 나누고, utm_source·gclid·fbclid 등 추적용 파라미터도 스스로 찾아냅니다.
입력하신 URL은 모두 브라우저 안의 자바스크립트에서 처리되며, 서버로 전송되는 일은 없습니다. 인증 정보가 담긴 URL이나 비밀번호가 붙은 URL(user:pass@host 형식)이라도, 내용을 바깥으로 흘리지 않고 안전하게 구조를 확인하실 수 있습니다.
URL 파서 사용 방법
- URL을 입력란에 붙여 넣습니다 스킴(https:// 등)을 포함한 완전한 URL을 입력합니다. 상대 경로나 스킴을 생략한 URL은 해석할 수 없습니다.
- 구성 요소의 목록을 확인합니다 프로토콜·호스트명·포트·경로·프래그먼트 등이 자동으로 나뉘어, 저마다 별개의 줄에 표시됩니다.
- 쿼리 파라미터를 확인합니다 키와 값의 쌍이 목록으로 표시되며, utm_source 등 추적용 파라미터에는 전용 배지가 붙습니다.
- 필요 없는 파라미터를 판단합니다 추적 배지가 붙은 파라미터를 보고, 공유하기 전에 지워야 할지를 판단합니다.
더 잘 활용하기 위한 팁
- SNS에 URL을 공유하기 전에 이 도구로 분해해 보면 utm_source 등의 트래킹 파라미터가 포함되어 있는지 확인할 수 있습니다. 불필요하다면 해당 파라미터를 제거한 URL을 공유하면 더 깔끔해집니다.
- 입력한 URL은 모두 브라우저 내 JavaScript로 처리되며 toolbase.cc 서버로는 전송되지 않습니다. 인증 정보가 포함된 URL도 안전하게 확인할 수 있습니다.
- 같은 키의 쿼리 파라미터가 여러 번 나타나는 경우(예:
?tag=a&tag=b) 각각 별도의 행으로 표시됩니다. - 프래그먼트(# 이후)는 서버로 전송되지 않으며 브라우저 내 페이지 내 링크·SPA 라우팅 등에 사용되는 부분입니다. 서버 로그 분석만으로는 알 수 없는 정보입니다.
- 포트 번호가 공란으로 표시되는 경우, http의 80번·https의 443번 같은 기본 포트가 생략되어 있음을 의미합니다.
URL 파서의 활용 상황
SNS 공유 전의 추적 확인
링크를 공유하기 전에 utm_source 등이 들어 있지 않은지 확인하고, 필요하면 걷어 낸 깨끗한 URL을 공유하실 수 있습니다.
긴 URL의 구조 이해
쿼리 파라미터가 잔뜩 이어 붙은 긴 URL이라도 키와 값마다 나뉘므로, 무엇을 지정하고 있는지 한눈에 알 수 있습니다.
서버 사이드 구현의 디버깅
라우팅이나 리다이렉트 처리를 구현하실 때, 실제 URL이 어떻게 나뉘는지를 브라우저의 URL API와 같은 동작으로 확인하실 수 있습니다.
광고 클릭 ID 조사
gclid·fbclid 등의 파라미터가 붙은 링크를 받으셨을 때, 어느 광고 플랫폼을 거쳤는지 가려내는 실마리가 됩니다.
URL 구성 요소의 용어
- 오리진
- 스킴·호스트명·포트의 조합을 가리킵니다. 동일 오리진인지 여부는 브라우저의 보안 제어(CORS 등)의 기준이 됩니다.
- 쿼리 문자열
- URL의 ‘?’ 뒤에 이어지는 key=value 형식의 파라미터 무리입니다. ‘&’로 여러 파라미터를 이어 붙일 수 있습니다.
- 프래그먼트
- URL의 ‘#’ 뒤의 부분입니다. 서버로는 전송되지 않고, 브라우저 안에서의 페이지 내 링크나 SPA의 라우팅에 쓰입니다.
- 퍼센트 인코딩
- ASCII 이외의 문자를 URL에서 다루기 위해 UTF-8의 바이트열을 %XX 형식으로 바꾸는 얼개입니다. URL 인코딩이라고도 부릅니다.
- UTM 파라미터
- utm_source 등, 접속 분석 도구가 유입원을 식별하기 위해 쓰는 일련의 쿼리 파라미터를 통틀어 이르는 말입니다.
- 클릭 ID
- gclid·fbclid처럼 광고 플랫폼이 발행하는 클릭 단위의 식별자입니다. 전환 측정에 쓰입니다.
자주 묻는 질문
스킴(http:// 등)을 포함한 완전한 URL만 해석할 수 있습니다. localhost:3000/path처럼 입력하려면 앞에 http://를 붙여 http://localhost:3000/path로 입력해 주세요.
여담이지만 ― URL에 트래킹 파라미터가 이렇게 많아진 이유
URL 끝에 붙는 ?utm_source=...와 같은 쿼리 파라미터는, Google Analytics의 전신인 Urchin사가 2005년에 제공하던 접속 분석 서비스 "Urchin Tracking Module"의 식별자에서 유래했습니다. Google이 Urchin을 인수해 Google Analytics로 제공하면서 "UTM 파라미터"라는 명칭과 함께 업계 표준으로 자리 잡았습니다.
2010년대 이후 Google·Facebook 등 광고 플랫폼이 자체 계측용 파라미터(gclid·fbclid 등)를 독자적으로 추가하게 되면서, 하나의 URL에 여러 트래킹 파라미터가 동시에 붙는 경우가 늘었습니다. SNS에서 공유된 링크가 부자연스럽게 길어지는 것은 대부분 이런 누적이 원인입니다.
일부 브라우저나 프라이버시 지향 도구는 이러한 파라미터를 자동으로 제거하는 기능을 갖추고 있습니다. 다만 계측 목적 자체는 많은 정상적인 사이트에 중요한 기능이므로 단순히 "나쁜 것"이라고 할 수는 없으며, 마케팅 효과 측정과 개인 프라이버시의 균형을 어떻게 맞출지에 대한 논의는 지금도 계속되고 있습니다.