canonical
은 웹페이지의 중복 콘텐츠 문제가 있을 때 검색엔진에 “이 URL이 이 콘텐츠의 대표 주소입니다”라고 알려 주는 메타 태그입니다. 구체적으로는 HTML <head>
섹션에 다음과 같이 씁니다:
<link rel="canonical" href="https://www.example.com/page.html">
왜 필요한가?
- 중복 콘텐츠 방지
같은 내용이 여러 URL(예: 파라미터가 다른 URL, www-버전/비-www 버전 등)로 제공될 때, 검색엔진이 어떤 URL을 인덱싱하고 랭킹 평가에 사용할지 결정하기 어려워합니다.
- SEO 신호 집중
대표 URL 하나에만 링크·소셜 신호(백링크, 공유 수 등)를 모아 주므로 검색 순위가 분산되지 않습니다.
어떻게 사용하나?
- 셀프 카노니컬(self-referencing)
모든 페이지에 자신을 가리키는 canonical 태그를 달아 줍니다.
<link rel="canonical" href="https://www.example.com/this-page.html">
- 중복 페이지 → 대표 페이지 지정
파라미터별 URL, 프린트용 페이지, 모바일 전용 페이지 등이 있을 때 대표 URL로 통일.
<!-- 예: 파라미터가 다른 URL들 -->
<!-- page.html?page=1 -->
<link rel="canonical" href="https://www.example.com/page.html">
- 크로스 도메인 카노니컬
동일 콘텐츠를 여러 도메인에서 제공할 때도 대표 도메인을 지정할 수 있습니다.
<link rel="canonical" href="https://origin-domain.com/content.html">
주의 사항
- 대표 URL은 HTTP 응답 코드 200 상태여야 합니다. 리디렉션(301, 302)이나 오류 페이지에는 쓰지 마세요.
<meta name="robots" content="noindex">
와 함께 쓰면 canonical이 무시될 수 있으므로, 두 지시가 충돌하지 않게 설정하세요.
- 페이지마다 절대 경로(absolute URL) 방식으로 작성해야 합니다.
- pagination(페이지 넘버링) 용도로는
<link rel="prev">
/<link rel="next">
태그를 별도로 사용하는 것이 권장됩니다.
이렇게 설정하면 구글 등 검색엔진이 중복 콘텐츠를 올바르게 인식하고, 원하는 대표 페이지를 우선 인덱싱하게 됩니다. 추가 질문이 있으시면 언제든 알려 주세요!