자바스크립트를 사용하여 Canonical URL을 설정하는 방법

워드프레스 정보를 제공하는 블로그 Avada 2018. 11. 10. 06:14 • 댓글:

Javascript를 사용하여 Canonical URL을 설정하려는 경우 다음가 같은 스크립트를 사용해볼 수 있습니다.

<script type='text/javascript'>
  var link = document.createElement('link');
  link.setAttribute('rel', 'canonical');
  link.setAttribute('href', location.protocol + '//' + location.host + location.pathname);
  document.head.appendChild(link);
</script>
// 출처: Set Canonical URL via Javascript

다른 방법으로 HtmlGenericControl 클래스를 사용할 수 있습니다.

HtmlGenericControl linkFile = new HtmlGenericControl("link");
linkFile.Attributes.Add("rel", "canonical");
linkFile.Attributes.Add("href", "testPath");
Page.Header.Controls.Add(linkFile);
// 출처: add a <link rel=“canonical” dynamically in the head tag

URL이 다르지만 콘텐츠가 동일하면 검색엔진에서 콘텐츠 중복 문제가 발생합니다. 이런 경우 대표 URL을 Canonical URL로 설정하면 콘텐츠 중복 문제를 방지할 수 있습니다.

예를 들어, PC 버전에 모바일 버전을 추가하게 되면 동일한 콘텐츠에 대하여 PC 버전과 모바일 버전이 존재하게 되어 콘텐츠 중복 문제가 발생합니다.

동일한 콘텐츠에 2개 URL 존재동일한 콘텐츠에 2개 URL 존재. 그림 출처: Google.

이 경우 올바르게 캐노니컬 URL을 설정해주지 않으면 네이버와 구글에서 순위가 하락하는 등 SEO 문제가 발생할 수 있습니다.