왜 만들었나요
로그인 연동에서 돌아오는 주소(OAuth 콜백)가 자꾸 엉뚱한 데로 튀어서 그 주소를 열어 봤는데, 안에 또 인코딩된 주소가 겹겹이 들어 있어 어디서 깨졌는지 찾기가 번거로웠습니다. 한 번에 분해해 쿼리스트링 분석까지 하고 값을 바로 복사할 수 있으면 디버깅이 빨라지겠다 싶어 만들었습니다.
긴 주소를 프로토콜·호스트·경로·쿼리로 나눠 표로 보여 줍니다. 쿼리는 파라미터별로 행을 나눠 보여 주고, 행을 클릭하면 그 값만 복사됩니다.
로딩 중...
로그인 연동에서 돌아오는 주소(OAuth 콜백)가 자꾸 엉뚱한 데로 튀어서 그 주소를 열어 봤는데, 안에 또 인코딩된 주소가 겹겹이 들어 있어 어디서 깨졌는지 찾기가 번거로웠습니다. 한 번에 분해해 쿼리스트링 분석까지 하고 값을 바로 복사할 수 있으면 디버깅이 빨라지겠다 싶어 만들었습니다.
Note
붙여넣은 주소는 서버로 전송되지 않습니다. 분석이 전부 브라우저 안에서 이뤄져, 토큰이 담긴 콜백 주소를 넣어도 기기 밖으로 나가지 않습니다.
입력창에 분석할 URL을 붙여넣으면 즉시 분해됩니다. 샘플 버튼으로 시작해도 됩니다. 주소 형식이 아니면 URL 형식이 올바르지 않습니다 안내가 빨간 박스로 뜨니, 공백이나 잘못된 문자가 섞였는지 확인해 보세요. 다만 공백 없는 낱말 하나는 도메인으로 봅니다 — 안녕하세요를 넣으면 오류 대신 호스트명 xn--o70b841ad5c9qb763b 이 나옵니다. 주소를 넣었는지 다시 확인해 주세요.

프로토콜·호스트명·포트·경로·해시·Origin이 행으로 나뉘어 표시됩니다. 포트·해시·사용자명·비밀번호는 값이 있을 때만 행이 나옵니다. 필요한 행을 클릭하면 그 값만 복사됩니다.

쿼리 파라미터는 이름과 값으로 나뉘어 아래에 표로 정리됩니다.

광고 링크를 넣으면 이렇게 나옵니다.
넣은 것
https://shop.example.com:443/items/12?q=%EC%82%AC%EA%B3%BC&utm_source=naver#reviews
나온 것
프로토콜 https
호스트명 shop.example.com
경로 /items/12
해시 #reviews
Origin https://shop.example.com
쿼리 q = 사과 ← 인코딩이 풀려서 보임
utm_source = naver
포트 행이 없는 이유는 443이 https의 기본 포트라 브라우저가 주소에서 지우기 때문입니다. :8080 처럼 기본이 아닌 포트를 넣으면 포트 행이 나옵니다. 해시는 #을 포함한 모습 그대로 보여 줍니다.
https:// shop.example.com :443 /items/12 ?q=사과 #reviews
└프로토콜┘ └───호스트────┘ └포트┘ └─경로──┘ └쿼리─┘ └해시┘
| 부분 | 하는 일 |
|---|---|
| 프로토콜 | 어떤 방식으로 통신할지 (https) |
| 호스트 | 어느 서버인지 |
| 포트 | 서버의 어느 창구인지 (기본 포트는 생략되어 행이 안 나옴) |
| 경로 | 서버 안에서 어느 자원인지 |
| 쿼리 | 추가로 넘기는 값들 (? 뒤) |
| 해시 | 페이지 안 위치 (# 뒤, 서버로 전송되지 않음) |
OAuth 같은 흐름에서는 redirect_uri 값 안에 또 다른 주소가 통째로 인코딩되어 들어갑니다. 쿼리 값은 풀어서 보여 주니, 그 주소를 다시 복사해 넣으면 한 겹씩 벗겨 볼 수 있습니다.
주소를 만들 때 값 안의 &나 = 를 인코딩하지 않으면 파라미터 경계가 어긋납니다. 이럴 때는 URL 인코더로 값만 따로 인코딩해서 다시 붙이세요.
# 뒤는 브라우저 안에서만 쓰이고 서버로 전송되지 않습니다. 서버 로그에 안 찍힌다고 이상한 게 아닙니다.
긴 주소에서 값 하나를 찾는 일이 잦다면 URL 파서가 그 수고를 덜어 줍니다.
| 상황 | 이유 |
|---|---|
| 광고 링크 검수 | 추적 항목이 제대로 붙었는지 확인 |
| 긴 주소에서 값 하나 찾기 | 눈으로 훑지 않고 표에서 바로 |
| 리다이렉트 주소 확인 | 어디로 넘어가는지 풀어서 보기 |
| 오류 제보 분석 | 어떤 값이 넘어왔는지 확인 |
주소의 ? 뒤에 붙는 이름=값 조각들입니다. 흔히 보이는 것들은 이렇습니다.
| 이름 | 뜻 |
|---|---|
q, query, keyword | 검색어 |
page, p | 몇 번째 페이지 |
utm_source 등 | 어디서 들어왔는지 추적용 |
redirect, next | 처리 후 이동할 주소 |
id, no | 글·상품 번호 |
특히 redirect 계열은 낯선 링크에서 확인해 볼 만한 값입니다. 엉뚱한 주소가 들어 있다면 누르지 않는 게 안전합니다.
주소 ? 뒤에 붙는 이름=값 쌍입니다. &로 여러 개를 이어 붙이며, 검색어·필터·추적 정보 등을 서버에 넘길 때 씁니다.
프로토콜 + 호스트 + 포트를 묶은 값입니다. 브라우저가 "같은 사이트인지" 판단하는 기준이라, 다른 도메인 요청을 막는 규칙에서 자주 등장합니다.
http·https 등 스킴이 붙은 표준 URL은 물론, 스킴 없이 도메인부터 시작하는 주소(example.com/path?q=1)도 https로 간주해 파싱합니다. 다만 주소 중간에 공백이나 URL에 쓸 수 없는 문자가 있으면 오류로 안내하니, 메신저에서 복사할 때 줄바꿈이 섞이지 않았는지 확인해 주세요.
쿼리 파라미터 값의 퍼센트 인코딩을 자동으로 풀어 디코딩된 글자로 보여줍니다. 한글 검색어나 인코딩된 리다이렉트 주소도 원래 형태로 읽을 수 있습니다. 반대로 인코딩된 원본 문자열이 필요하면 URL 인코더 도구를 함께 쓰면 됩니다.
중복을 합치지 않고 URL에 나온 순서대로 각각 별도 행으로 표시합니다. 광고 링크 검수처럼 파라미터가 실수로 두 번 붙은 걸 찾아야 하는 경우에 그대로 드러나도록 한 동작입니다.
http의 80, https의 443처럼 프로토콜 기본 포트는 URL 표준상 생략되기 때문에 포트 행이 표시되지 않습니다. 8080·3000 같은 비표준 포트를 쓴 주소에서만 포트 행이 나타납니다.
마지막 업데이트: