12분 분량
URL 리디렉션 확인 방법과 리디렉션 체인 읽는 법
TrueURL, curl, 개발자 도구로 URL 리디렉션(리다이렉트)을 단계별로 확인하고, 체인의 모든 홉을 읽고, 루프·긴 체인·301/302 혼용을 고치는 법을 설명합니다.
글 읽기무료 리디렉션 도구
브라우저에 “리디렉션한 횟수가 너무 많습니다”라는 오류가 표시된다면 사이트가 브라우저를 같은 경로로 계속 돌려보내고 있는 것입니다. TrueURL은 루프가 닫힐 때까지 리디렉션을 따라가고 관련된 모든 URL을 보여 줍니다.
Enter 키를 누르면 검사합니다
Cloudflare 엣지는 항상 인증서를 검증하므로 이 옵션으로 검증을 건너뛸 수는 없습니다. 인증서 문제는 결과에 표시됩니다.
첫 번째 요청과 함께 최대 16 KB까지 전송됩니다. Content-Type 헤더를 직접 지정하지 않으면 JSON 본문은 application/json으로, 그 밖의 본문은 폼 데이터로 전송됩니다.
1~50 사이로 지정합니다. 브라우저는 리디렉션 20회 후 멈춥니다.
사이트에 따라 휴대폰, 크롤러, 링크 미리보기 봇을 각기 다른 곳으로 리디렉션할 수 있습니다.
체인의 모든 요청에 함께 전송됩니다.
사용자 지정 헤더가 없습니다.
이 헤더를 전송하려면 값을 입력하세요. 헤더 값은 저장되지 않습니다.
HTML 페이지에 있는 <meta http-equiv="refresh"> 태그와 Refresh 헤더를 따라갑니다.
페이지 스크립트에 있는 location.href = "…"처럼 단순하고 조건 없는 리디렉션을 따라갑니다.
설정은 이 브라우저에 저장됩니다. 쿠키, 헤더 값, POST 본문은 저장되지 않습니다.
리디렉션 루프는 URL A가 URL B로 리디렉션되고, B가 직접 또는 다른 홉을 거쳐 다시 A로 리디렉션될 때 발생합니다. 브라우저는 약 20번 리디렉션을 따라간 뒤 오류를 표시하며 포기합니다. Chrome과 Edge에서는 ERR_TOO_MANY_REDIRECTS(“example.com에서 리디렉션한 횟수가 너무 많습니다.”), Firefox에서는 The page isn't redirecting properly, Safari에서는 Too many redirects occurred가 표시됩니다. 검색엔진은 루프에 갇힌 페이지를 색인할 수 없습니다.
TrueURL은 요청하는 모든 URL을 그 시점의 요청 메서드 및 보유 중인 쿠키와 함께 기록합니다. 어떤 홉이 같은 상태로 이미 요청했던 URL로 되돌아가면 체인은 절대 끝날 수 없으므로, 결과에서 루프가 닫히는 홉을 강조해 표시합니다.
TrueURL은 브라우저처럼 쿠키를 유지하기 때문에 실제 루프와 정상적인 쿠키 핸드셰이크를 구분할 수 있습니다. 쿠키 핸드셰이크란 사이트가 쿠키를 설정한 뒤 같은 URL로 한 번 다시 보내는 동작을 말합니다. 매번 상태가 바뀌면 고급 설정의 최대 홉 수 제한(최대 50)에 도달할 때까지 체인을 계속 따라갑니다. 제한에 도달한 체인도 대개는 끝없는 루프입니다. 예를 들어 홉마다 새 쿼리 매개변수를 추가하는 경우가 그렇습니다.
www를 추가하고, 다른 규칙(주로 CMS나 호스팅 관리 패널에 있는 규칙)은 이를 제거합니다.Server, Via, CF-Ray, X-Powered-By 같은 응답 헤더를 보고 CDN, 웹 서버, 애플리케이션 중 어느 계층이 리디렉션을 보냈는지 확인하세요.12분 분량
TrueURL, curl, 개발자 도구로 URL 리디렉션(리다이렉트)을 단계별로 확인하고, 체인의 모든 홉을 읽고, 루프·긴 체인·301/302 혼용을 고치는 법을 설명합니다.
글 읽기리디렉션 체인이 20번의 리디렉션 후에도 끝나지 않을 때 Chrome이 표시하는 오류입니다. 거의 항상 루프가 원인이며, 사이트의 리디렉션 규칙이 서로 충돌한다는 뜻입니다. 위에서 URL을 검사해 어떤 URL이 반복되는지 확인하세요.
네. 쿠키, 언어, 위치, 기기에 따라 발생하는 루프는 그 조건에 해당하는 방문자에게만 나타납니다. 고급 설정에서 해당 쿠키, Accept-Language 헤더, 모바일 User-Agent를 추가하고 다시 검사해 재현해 보세요. 다만 방문자 위치에 따라 발생하는 루프는 요청이 항상 Cloudflare 네트워크에서 나가기 때문에 재현할 수 없습니다.
그렇다면 쿠키 기반 루프였던 것입니다. 오래되었거나 충돌하는 쿠키 때문에 사이트가 브라우저를 계속 같은 곳으로 돌려보낸 것입니다. 쿠키를 삭제하면 브라우저의 상태는 초기화되지만, 같은 쿠키를 받는 모든 방문자에게는 버그가 그대로 남아 있습니다. 고급 설정의 쿠키 필드를 사용해 여기서 재현해 보세요.
브라우저가 로그인되어 있거나, 동의 쿠키가 있거나, HSTS 항목이나 캐시된 리디렉션 덕분에 홉 하나를 건너뛰고 있을 수 있습니다. TrueURL은 처음 방문한 사용자나 크롤러처럼 쿠키와 기록이 없는 상태에서 시작합니다. 사이트가 데이터 센터에서 오는 요청을 다르게 처리하는 경우가 아니라면, TrueURL이 루프를 발견했을 때 신규 방문자와 크롤러도 같은 루프에 빠질 가능성이 높습니다.
루프는 TrueURL이 같은 상태로 이미 요청했던 URL로 되돌아왔다는 뜻이므로 체인이 절대 끝날 수 없습니다. 최대 홉 수 도달은 정확히 반복되는 URL은 없었지만 설정된 횟수만큼 리디렉션한 뒤 멈췄다는 뜻입니다. 그런 체인은 언젠가 끝날 수도 있지만, 그만큼 긴 체인은 어느 쪽이든 문제입니다. 더 멀리 따라가 보려면 최대 홉 수를 50으로 늘리세요.
네, 가장 흔한 원인 중 하나입니다. 서버는 HTTPS를 강제하는데 CDN이 HTTP로 서버와 통신하거나, CDN과 서버가 www와 non-www 사이에서 서로 반대 방향으로 리디렉션하면 모든 요청이 둘 사이를 계속 오가게 됩니다. 각 홉의 응답 헤더를 보면 어느 계층이 응답했는지 알 수 있습니다.