캐노니컬 태그 VS 301 리다이렉트 어느 것이 더 좋은가?

301 redirection vs canonical tag

동일한 콘텐츠가 여러 페이지로 존재하는 경우나 기존 페이지의 내용이 업데이트되는 경우 등 중복되는 콘텐츠를 관리할 때, 캐노니컬 태그와 301 리다이렉트 중 어느 것이 더 좋을까?

정의와 함께 상황별 최적의 설정법을 알아보자.

301 Redirect

301 리다이렉트는 한 웹 페이지를 다른 페이지로 영구적으로 이동시키는 것이다. 유저가 기존의 웹 페이지 URL을 입력하면 301 리다이렉트를 설정한 타겟 URL로 자동으로 연결된다. 즉, 원래 입력했던 웹 페이지의 URL이 브라우저에 로드되지 않고 리다이렉트 타겟으로 설정된 새로운 URL이 로드되는 것이다.

301 Redirection은 Apache의 서버 구성 파일 .htaccess, Nginx의 example.conf 파일 또는 WordPress를 사용하는 경우 플러그인을 통해 처리할 수 ​​있다.

Canonical URL설정 이란

캐노니컬 태그의 기본 역할은 이 태그가 설정된 페이지가 어떤 URL의 사본인지를 검색엔진에게 알려주는 것이다. 즉, 원본 URL이 무엇인지를 알려주는 태그라고 할 수 있다. Canonical URL은 해당 페이지의 HTML 내 <Head> 섹션에 아래의 예제와 같이 정의할 수 있다.

<link rel=”canonical” href=”https://example.com” />

언제 301 Redirect를 사용해야 하는가?

  • URL이 변경되었을 경우
  • 기존 페이지를 더 이상 사용하지 않고 새로운 버전의 페이지가 생겼을 경우
  • 두 개의 동일한 페이지가 있으나 하나는 사용하지 않을 경우

위 경우들의 301 필요성을 얘기해보자면, 사용자가 검색을 통해서 접근했을 경우 없는 페이지라는 화면을 보고 이탈하는 것을 방지하기 위해 301 Redirect를 써야 한다. 위 세 가지 경우 모두에 해당한다. URL이 변경되었을 때는 당연하게 Redirect를 사용해야 하고, 새로운 버전의 페이지가 생겼을 때 기존 페이지의 권위를 유지하면서 옮겨오기 위해 타 Redirection 방식이 아닌 301 Redirect를 사용해야 한다. 마지막으로 어떠한 필요에 의해 동일한 두 페이지를 만들었을 때 하나를 살려두어야 할 필요가 없을 때는 301 Redirection을 사용하면 된다.

언제 Canonical URL을 사용해야 하는가?

  • 파라미터를 사용한 경우
  • 유사한 페이지가 있으나 주요 페이지만 색인이 되면 될 경우
  • 여러 방법/경로로 접근할 수 있으나 모두 동일한 페이지일 경우

파라미터를 사용한 경우 전체 페이지의 일부가 모두 동일하게 작성되어 있을 가능성이 높아 이를 검색엔진이 중복 페이지로 인식하여 페널티를 줄 수 있고, 유사한 페이지가 있으나 주요 페이지만 색인이 되면 될 경우, 모두가 다 색인이 필수가 아니라면 파라미터 이전까지의 URL로 Canonical URL을 설정하는 것이 좋다. 또한 필요에 의해 다양한 경로로 접근할 수 있도록 만들어둔 중복 페이지들이 있을 경우에도 Canonical URL을 설정하여 이 유사 페이지 중 핵심 페이지가 무엇인지 검색엔진에게 알려주어야 한다. 다만 Canonical URL은 Redirection 되거나 없는 페이지가 아닌 정상적으로 로딩이 되는 페이지여야 한다는 것을 꼭 주의해야 한다.

유사한 콘텐츠가 있고 301 Redirection과 Canonical URL 설정 중 어느 하나를 선택해야 할지 모르겠을 때는 페이지 URL을 모두 남겨야 하고 실제로 접근이 가능해야 한다면 Canonical URL을 설정하여 중복 콘텐츠 페널티를 방지하고, 하나의 URL로 뭉쳐도 될 경우 301 리다이렉트를 사용하면 된다는 점을 기억하면 조금 더 이해가 쉬울 것 같다.