URL / URI Tools

URL 정규화

주소 정리, 상대 참조 해석, 경로 추가 중 필요한 작업을 선택하세요.

URL 정규화

입력

결과

브라우저에서 계산하며 입력한 주소를 열거나 요청하지 않습니다.

옵션

HTTP(S)만 처리합니다. 호스트, 스킴, 기본 포트와 점 경로는 브라우저 규칙을 따릅니다. 예약 문자는 디코딩하지 않으며 canonical은 보장하지 않습니다.

입력과 활성 기준 주소는 각각 100,000 UTF-16단위, 출력은 1,000,000단위까지입니다.

완료 · 59단위 · 쿼리 파라미터 3개

URL 정규화는 복사한 API 주소에 대문자 호스트, 기본 포트, 상위 경로가 섞였을 때 변화를 확인하는 데 유용합니다. 예제로 시작하면 어떤 부분이 정리되고 어떤 값이 그대로 남는지 먼저 살펴볼 수 있습니다.

기준 주소가 /api/v1일 때 users를 추가한다는 말에는 두 가지 뜻이 있습니다. 현재 페이지의 상대 링크를 해석하는 것인지, 전체 경로 뒤에 디렉터리를 붙이는 것인지 선택해야 예상한 주소를 얻을 수 있습니다.

URL 정규화를 사용하는 이유

경로 대체와 추가를 구분

URL 정규화에서 같은 기준 주소를 두 방식으로 비교하세요. https://example.com/api/v1에 users를 상대 해석하면 /api/users가 되고, 경로를 결합하면 /api/v1/users가 됩니다. 코드에 주소를 넣기 전에 마지막 경로의 의미를 확인할 수 있습니다.

기준의 마지막 폴더를 파일로 대체하는 경로와 두 폴더 뒤에 같은 파일을 추가하는 경로.

여러 값의 순서 유지

반복되는 tag 키는 원래 순서대로 남습니다. flag와 flag=를 구분하며, +를 %20으로 바꾸지 않습니다. 인코딩 정리와 쿼리 삭제를 별도로 선택하므로, 중복 값을 임의로 합치지 않고 기존 링크를 검토할 수 있습니다.

인코딩 조정 후에도 순서와 반복된 쌍을 유지하는 색깔 쿼리 태그.

기준 주소의 마지막 경로 확인

01

완전한 주소인지 먼저 선택

정규화는 http:// 또는 https://가 명시된 절대 주소를 받습니다. 상대 URL에는 상대 해석을 선택하고 원래 링크가 놓인 페이지를 기준 주소로 지정하세요. 정규화 모드에서는 기준 주소를 사용하지 않습니다.

02

끝 슬래시의 의미 비교

상대 해석은 끝 슬래시가 없는 기준 주소의 마지막 부분을 파일 위치로 취급합니다. 결합은 전체 경로 뒤에 추가하며 기준 주소의 쿼리와 조각을 유지합니다. 결합 입력은 여러 폴더를 포함해도 하나의 경로여야 하며 ?나 #가 있으면 상대 해석을 사용하세요.

03

삭제 개수를 확인하고 적용

자동 변환은 마지막 편집 후 350밀리초에 실행됩니다. 자동을 끄면 Ctrl/Cmd + Enter로 실행할 수 있습니다. 입력이나 설정이 바뀌면 내보내기가 비활성화됩니다. 결과를 적용하면 정규화 모드로 바뀌고 기준 주소가 비워지며, 실행 취소는 이전 상태 전체를 복원합니다.

구조와 인코딩을 따로 조절

브라우저 규칙으로 주소 정리

스킴과 호스트는 소문자로 바꾸고 HTTP의 80, HTTPS의 443 포트는 생략합니다. 다른 포트는 보존합니다. 점 경로를 해석하며 국제화 도메인은 ASCII/Punycode로, 유니코드 경로는 브라우저 규칙에 맞는 퍼센트 인코딩으로 출력합니다.

세 가지 퍼센트 표기 방식

파싱한 표기 유지, 16진수 대문자화, 비예약 문자 디코딩을 선택할 수 있습니다. 비예약 문자는 ASCII 영문자, 숫자와 -._~입니다. %2F, %3F, %23은 구조 기호로 바꾸지 않고 %252F도 반복 디코딩하지 않습니다.

참조 해석과 단일 경로 결합

상대 해석은 상위 경로, 루트 경로, 쿼리만 또는 조각만 있는 참조를 처리합니다. 결합은 접점의 슬래시만 정리하고 내부 //는 유지합니다. 쿼리 파라미터를 병합하지 않으며, 결합에서 이어받은 기준 주소의 쿼리에 유지·삭제 정책을 적용합니다.

주소를 사용할 때의 범위와 한계

검색 엔진의 대표 주소를 결정하지 않음
페이지 내용, 리디렉션이나 서버 설정을 조회하지 않습니다. HTTPS 강제 전환, www 변경, 경로 소문자화, 내부 이중 슬래시 병합, 끝 슬래시 변경도 하지 않습니다. 변환 결과가 서버에서 같은 리소스를 뜻하는지 또는 canonical인지 보장할 수 없습니다.
유지가 바이트 일치를 뜻하지는 않음
쿼리를 정렬하거나 중복·빈 값·UTM을 제거하지 않습니다. 다만 브라우저 직렬화와 퍼센트 옵션은 표기를 바꿀 수 있습니다. 삭제는 전체 쿼리를 없애며 빈 ?도 별도로 보고합니다. 서명된 링크는 실제 서명 규칙에 맞춰 확인해야 합니다.
명시적인 HTTP(S) 주소만 처리
상대 해석과 결합에는 유효한 절대 기준 주소가 필요합니다. 인증 정보, 제어 문자, 역슬래시, 잘못된 % 표기와 짝이 없는 서로게이트는 거부합니다. 양끝 공백은 제거합니다. 형식이 맞는 인코딩 바이트의 UTF-8 유효성까지 검사하지는 않습니다.
결합은 디렉터리 접근 제한이 아님
결합 입력은 스킴이나 //로 시작할 수 없고 ?와 #를 포함할 수 없습니다. 앞의 단일 /는 접점으로 처리합니다. ..로 상위 디렉터리에 갈 수 있으므로 접근 제어에 사용하지 마세요. 빈 경로는 기준 주소를 유지한 뒤 정책을 적용합니다.
단일 주소와 길이 제한
입력과 사용 중인 기준 주소는 각각 100,000 UTF-16 코드 단위, 출력은 1,000,000단위까지 허용합니다. 초과하면 잘라내지 않고 오류를 냅니다. 긴 결과는 20,000단위씩 표시하지만 복사와 TXT에는 최신 결과 전체가 들어갑니다. 파일 일괄 처리는 지원하지 않습니다.

URL 정규화 자주 묻는 질문

절대 URL과 상대 URL을 어떻게 결합하나요?

절대 페이지 주소를 기준 주소로 넣고 상대 참조를 입력한 뒤 상대 해석을 선택하세요. 브라우저의 디렉터리·상위·루트 규칙이 적용됩니다. 기준 주소의 마지막 부분까지 포함해 뒤에 붙이려면 경로 결합을 선택해야 합니다.

상대 경로를 해석하면 기준 URL의 마지막 경로가 바뀌는 이유는 무엇인가요?

/a/b의 현재 디렉터리는 /a/이므로 c를 해석하면 /a/c가 됩니다. 기준 주소를 /a/b/로 바꾸면 /a/b/c가 됩니다. 경로 결합을 사용하면 끝 슬래시가 없어도 전체 경로 뒤에 추가할 수 있습니다.

URL 퍼센트 인코딩은 대소문자를 구분하나요?

%7e와 %7E는 같은 바이트를 나타냅니다. 이 규칙은 퍼센트 표기의 16진수에 적용되며 URL 전체가 대소문자를 구분하지 않는다는 뜻은 아닙니다. File과 file이라는 경로는 서로 다른 리소스를 가리킬 수 있습니다.

URL 경로에서 슬래시와 %2F는 같은 의미인가요?

항상 같다고 볼 수 없습니다. /는 경로 구분자이고 %2F는 인코딩된 예약 문자입니다. 서버나 라우터가 다르게 처리할 수 있으므로 비예약 문자 디코딩을 선택해도 %2F는 그대로 두어 새로운 경로 구분자를 만들지 않습니다.

쿼리 문자열의 순서가 SEO 중복 콘텐츠에 영향을 주나요?

문자열만으로 검색 엔진의 대표 URL이나 중복 페이지를 판정할 수 없습니다. 쿼리 순서는 서명이나 애플리케이션 동작에도 영향을 줄 수 있습니다. 기본값은 순서를 유지하며, 대표 주소 정책은 실제 페이지 내용과 서버 동작에 따라 정해야 합니다.

문제가 있나요?

의도한 경로로 다시 확인

URL 정규화에서 작업 모드와 삭제 개수를 확인한 다음 결과를 복사하세요. 입력을 바꾸려면 미리보기를 열고 적용하면 됩니다.