canonical이란? 중복 주소 문제 해결
canonical은 같은 내용이 여러 주소로 열릴 때 "이 주소가 대표입니다"라고 검색엔진에 알려주는 설정입니다.
언제 필요한가요
- www가 있는 주소와 없는 주소가 모두 열릴 때
- http와 https가 모두 열릴 때
- 주소 끝 슬래시 유무로 같은 페이지가 둘로 열릴 때
- ?utm= 같은 추적 값이 붙은 주소가 있을 때
작성 예시
페이지의 head 안에 대표 주소를 적습니다.
<link rel="canonical" href="https://www.example.com/services">작성 규칙
주소는 https부터 시작하는 전체 주소로 적고 페이지마다 하나만 둡니다. 보통 자기 자신의 주소를 대표 주소로 지정해두는 것이 안전합니다.
주의할 점
canonical은 강제 명령이 아니라 검색엔진에 주는 힌트입니다. 다른 페이지 주소를 잘못 지정하면 현재 페이지가 검색에서 빠질 수 있으니 의도한 경우에만 쓰세요.
확인하는 법
SEO-MASTER 무료 진단에서 canonical 존재 여부와 현재 주소와의 일치 여부를 확인할 수 있습니다.
중복 주소를 정리하는 3가지 방법
| 방법 | 하는 일 | 쓰는 곳 |
|---|---|---|
| 301 리다이렉트 | 방문자와 검색로봇을 대표 주소로 실제로 보냅니다. | http → https · www 없는 주소 → www 주소 · 옛 주소 → 새 주소 |
| canonical | 두 주소가 모두 열려야 할 때 대표 주소를 알립니다. | 추적 값(?utm=)이 붙은 주소 · 정렬·필터가 붙은 쇼핑몰 주소 |
| 내부 링크와 사이트맵 통일 | 메뉴 · 본문 링크 · 사이트맵에 대표 주소만 씁니다. | 모든 경우에 함께 해야 하는 기본 |
세 가지는 함께 쓸수록 신호가 분명해집니다. 대표 주소로 301 이동을 하고 페이지에는 자기 주소를 canonical로 적고 링크와 사이트맵도 같은 주소를 쓰는 식입니다.
자주 하는 실수
- 모든 페이지의 canonical을 홈 주소로 지정함 (홈 말고는 검색에서 빠질 수 있습니다)
- /services 처럼 앞부분을 뺀 주소로 적음 (https부터 전체 주소로 적는 것이 안전합니다)
- https 사이트인데 canonical에는 http 주소를 적음
- 한 페이지에 canonical 태그가 두 개 들어감
- noindex와 다른 페이지를 가리키는 canonical을 함께 씀 (서로 다른 신호가 됩니다)
Search Console에서 확인하는 법
URL 검사에 주소를 넣고 페이지 색인 생성 항목을 열면 "사용자가 선언한 표준 URL"과 "Google이 선택한 표준 URL"이 나옵니다. 둘이 같으면 의도대로 된 것이고 다르면 구글이 다른 주소를 대표로 판단한 것입니다.
자주 묻는 질문
canonical이 없으면 문제인가요
바로 문제가 되지는 않지만 중복 주소가 있는 사이트에서는 설정하는 것이 좋습니다.
301 이동과 무엇이 다른가요
301은 방문자와 검색엔진을 실제로 다른 주소로 보내는 것이고 canonical은 대표 주소를 알리는 힌트입니다.
모든 페이지에 넣어야 하나요
넣어두면 관리가 쉬워 보통 모든 페이지에 자기 주소로 지정합니다.
구글이 제가 지정한 것과 다른 주소를 대표로 골랐어요
두 주소의 내용이 거의 같거나 내부 링크 · 사이트맵이 다른 주소를 가리키는 경우가 많습니다. 링크와 사이트맵을 대표 주소로 통일하고 가능하면 301 이동으로 정리하세요.
쇼핑몰의 정렬·필터 주소는 어떻게 하나요
정렬이나 필터만 다른 주소는 보통 기본 목록 페이지를 canonical로 지정합니다. 필터 조합이 아주 많다면 내부 검색처럼 수집 범위를 함께 검토합니다.
이 글은 일반적인 SEO 정보이며 특정 순위나 결과를 보장하지 않습니다. 검색 도구의 화면과 메뉴 이름은 바뀔 수 있습니다.