TrueURL
TrueURL

메뉴

무료 리디렉션 도구

리디렉션 체인 검사

URL에서 최종 목적지까지 거치는 모든 홉(리디렉션 한 단계)을 추적합니다. 불필요한 리디렉션, 임시 리디렉션 코드, 느린 홉을 찾아낸 뒤 체인을 리디렉션 한 번으로 줄이세요.

리디렉션 체인이란?

리디렉션 체인은 브라우저나 크롤러가 콘텐츠가 있는 페이지에 도달하기까지 따라가야 하는 일련의 리디렉션입니다. /old-page에서 /new-page로 가는 것처럼 홉이 하나라면 정상입니다. 체인은 수년에 걸쳐 규칙이 쌓이면서 길어집니다. HTTP에서 HTTPS로 보내는 규칙에 www 규칙, 후행 슬래시 규칙, 마지막 리뉴얼 때 추가한 규칙까지 차례로 더해지는 식입니다. 아래 체인은 한 번이면 충분한 리디렉션을 네 번이나 거칩니다.

http://example.com/shop          301
https://example.com/shop         301
https://www.example.com/shop     301
https://www.example.com/shop/    302
https://www.example.com/store/   200

긴 리디렉션 체인이 문제가 되는 이유

  • 속도: 홉마다 별도의 요청이 발생하며, 대개 DNS 조회와 TLS 핸드셰이크도 따로 거칩니다. 모바일 네트워크에서는 페이지가 로드되기 시작하기 전에 홉 하나당 수백 밀리초가 더해질 수 있습니다.
  • 크롤링: Googlebot은 최대 10홉까지 따라간 뒤 리디렉션 오류를 보고합니다. 대규모 사이트에서는 불필요한 홉 하나하나가 실제 페이지에 돌아갈 수 있었던 크롤링 용량을 소모합니다.
  • 안정성: 홉이 하나 늘 때마다 실패하거나, 루프에 빠지거나, 만료될 수 있는 서버, 규칙, 인증서도 하나씩 늘어납니다.
  • 신호: 체인 어딘가에 임시 리디렉션 코드가 하나만 있어도 검색엔진에 전달하려는 영구 이전 신호가 약해집니다.

리디렉션 체인 읽는 법

각 행이 하나의 홉입니다. 상태는 리디렉션의 종류를 나타냅니다. 301과 308은 영구 리디렉션이고, 302, 303, 307은 임시 리디렉션입니다. 메서드를 보면 브라우저가 301, 302, 303 이후에 하듯 POST가 GET으로 바뀐 지점을 알 수 있습니다. 가공하지 않은 Location 값은 서버가 보낸 내용을 그대로 보여 주므로 상대 경로, 빠진 슬래시, 불필요한 쿼리 문자열을 찾는 데 도움이 됩니다. meta refresh 또는 JavaScript로 표시된 홉은 Location 헤더가 아니라 페이지 HTML(또는 Refresh 헤더)에서 발견된 클라이언트 측 리디렉션입니다.

체인은 네 가지 중 하나로 끝납니다. 최종 URL의 정상 응답, 리디렉션 루프, 최대 홉 수 제한, 또는 DNS 실패, 시간 초과, 인증서 문제처럼 특정 홉에서 발생한 오류입니다.

리디렉션 체인을 줄이는 방법

  1. 체인이 최종적으로 도착해야 할 URL을 확인해 두세요.
  2. 첫 번째 리디렉션 규칙이 한 번의 301 또는 308로 해당 최종 URL을 바로 가리키도록 수정하세요.
  3. 서버나 CDN에서 스킴, 호스트, 슬래시 규칙을 하나로 합쳐 http://example.com/page가 https://www.example.com/page/로 바로 이동하게 하세요.
  4. 내부 링크, canonical 태그, 사이트맵을 최종 URL로 업데이트해 방문자와 크롤러가 리디렉션을 아예 거치지 않게 하세요.
  5. 여기서 예전 URL을 다시 검사해 체인이 홉 하나로 줄었는지 확인하세요.

가이드

자주 묻는 질문

체인에서 리디렉션이 몇 번이면 너무 많은 건가요?

예전 URL에서 최종 URL까지 리디렉션 한 번을 목표로 하세요. HTTP에서 HTTPS로 전환한 뒤 호스트를 바꾸는 경우처럼 불가피하다면 두 번까지는 괜찮습니다. TrueURL은 리디렉션이 3회를 넘는 체인에 경고를 표시합니다. Googlebot은 10홉을 넘으면 포기하고, 브라우저는 약 20회 이후 “리디렉션한 횟수가 너무 많습니다” 오류를 표시하며 멈춥니다.

리디렉션 체인 때문에 링크 가치가 손실되나요?

Google은 3xx 리디렉션으로 PageRank가 손실되지 않는다고 밝혔으므로, 체인이 순위 신호를 직접 약화시키지는 않습니다. 실제 문제는 페이지 속도 저하, 낭비되는 크롤링 요청, 그리고 체인 중 한 홉이 끊어지거나 임시 리디렉션일 가능성이 커진다는 점입니다. 체인은 기술 부채로 보고 줄여 나가세요.

리디렉션 체인과 리디렉션 루프는 어떻게 다른가요?

체인은 결국 최종 URL에서 끝납니다. 루프는 이미 방문한 URL로 되돌아가기 때문에 끝나지 않으며, 브라우저는 페이지 대신 오류를 표시합니다. TrueURL은 둘 다 감지합니다. 루프의 흔한 원인과 해결 방법은 리디렉션 루프 검사 페이지에서 설명합니다.

POST 요청으로 시작하는 리디렉션 체인도 검사할 수 있나요?

네. 고급 설정에서 HTTP 메서드를 POST로 설정하고 요청 본문을 추가하세요. 그러면 체인은 브라우저 규칙을 따릅니다. POST 이후 301, 302, 303은 본문 없이 GET으로 이어지고, 307이나 308은 같은 본문으로 POST를 다시 보냅니다.

결과에 표시되는 “다른 도메인에서 끝남” 경고는 무슨 뜻인가요?

최종 URL의 호스트 이름이 입력한 URL과 다르다는 뜻입니다(맨 앞에 붙은 www. 차이는 무시합니다). 단축 링크나 도메인 이전에서는 당연한 결과입니다. 하지만 자기 사이트의 페이지가 예상과 달리 다른 도메인에서 끝난다면 자세히 살펴보세요. 잘못 설정된 규칙, 해킹된 사이트, 오픈 리디렉션의 징후일 수 있습니다.

체인에 meta refresh와 JavaScript 리디렉션도 포함되나요?

네, 기본적으로 포함됩니다. TrueURL은 HTML 응답에서 meta refresh 태그와 간단한 JavaScript 리디렉션을 찾아 그 지점부터 체인을 이어 가고, 해당 홉에 라벨을 붙여 HTTP 리디렉션과 구분할 수 있게 합니다. 이 기능을 끄면 서버 측 리디렉션만 볼 수 있으며, 자세한 내용은 Meta Refresh 검사에서 확인할 수 있습니다.

홉에 상태 코드 대신 오류가 표시되는 이유는 무엇인가요?

HTTP 응답을 받기 전에 해당 홉의 요청이 실패했기 때문입니다. 호스트 이름의 DNS 조회에 실패했거나, 연결이 거부되었거나 시간 초과되었거나, TLS 인증서가 유효하지 않았거나, 리디렉션 대상이 유효하지 않거나 차단된 주소인 경우입니다. 어떤 원인인지는 그 홉의 오류 메시지에 나옵니다. 그 앞의 홉들은 그대로 표시되므로 체인이 정확히 어디서 끊어졌는지 알 수 있습니다.