콘텐츠로 건너뛰기

중복 없이 티스토리 주소 변경 성공 – 2차 도메인으로 301 없이 이전 하기

  • Blog

블로그 주소 변경, 도메인 이사는 티스토리 블로그를 운영하면서 수익이 발생하기 시작한 경험을 하신 블로거라면 한번쯤 알아보았을 만한 내용 중 하나일 것 입니다. 아마도 대부분 최근 티스토리의 정책변경으로 수익에 비상식적인 변동이 생겨 워드프레스로 옮겨가거나, 우선 개인 도메인 부터 애드센스 승인을 받고 다음을 준비하기 위함일 것 입니다.

이번 포스팅에서는 티스토리 운영을 이어오던 중 2차 도메인을 연결한 후 기존 게시물의 노출 순위를 유지하면서 새로 연결한 도메인이 노출되도록 하는 작업을 성공한 저의 사례와 함께 방법을 공유드리고자 합니다.

참고로, 호스팅 없이 워드프레스를 시작하는 방법에 대해 간단히 소개한 포스팅이 있으니, 혹시 워드프레스로의 이전를 고민중이신 분께서는 참고해보셔도 좋을 것 같습니다.

canonical


2차 도메인과 검색엔진 중복 게시물

도메인을 구매하고 주소를 변경, 혹은 2차 도메인을 연결하는 과정 자체는 별로 어려울 것도 없고 시간도 얼마 걸리지 않습니다. 문제는 구글, 네이버 등 검색엔진에서 미리 색인해 둔 이전 주소의 내용과 새로 바뀐 주소의 내용이 동일하기 때문에 중복 게시물로 판단하여 검색에 노출되지 않는다는 점 입니다. 이렇게 되면 주소를 바꾼 것이 오히려 손해가 되어버리죠. 특히, 티스토리에 2차 도메인을 연결하는 경우는 기존 티스토리 주소도 유지하기 때문에 구글의 중복 인식을 피하기가 더 어렵습니다.

google search 4
구글 검색 보고서. 거의 하루에 한 포스팅 꼴로 구글에 노출에 추가되는 애지중지 키운(?) 블로그라고 할 수 있겠습니다.

이 점은 저에게도 어려운 문제였는데요, 저 역시 티스토리 정책변화를 계기로 블로그 호스팅 주체를 변경하고자 했고, 그 중간 과정으로 워드프레스 개설과 함께 개인 도메인으로 티스토리 2차 도메인을 연결하고자 하였습니다. 시간이 몇 달 걸리더라도 기존의 검색 노출을 새로운 주소로 바꿀 수 있다면, 필요 시 어렵지 않게 다른 블로그 플랫폼으로 옮겨갈 수 있기 때문입니다.

가장 고민이 된 것은 아무래도 고정적으로 잘 나오고 또 늘어나고 있는 유입이 혹시나 끊겨버리지는 않을까 싶은 점 입니다. 제가 세어봐도 적어도 5개 이상의 포스팅이 구글 검색 최상단에 나오고 있었고, 네이버에서도 몇몇 포스팅이 가장 위에 나오고 있었기 때문에 고민이 될 수 밖에 없었죠.

naver search 2
네이버 최상단 노출도 있었던 블로그

하지만, 도메인 변경, 이사, 주소 바꾸기 등 어려 키워드로 검색을 해봐도 중복 없이 변경은 불가능하다, 시도하다가 오히려 유입만 줄어 손해보았다 등 어렵다는 글이 절대다수입니다.

그렇다면, 구글은 앞뒤 가리지 않고 주소가 변경되는 것을 허용하지 않는 것일까요? 잘 생각해보면 이 역시 말이 안됩니다. 예를 들어, 위키피디아가 어느날 이름을 바꾸면서 도메인을 변경하게 되었다고 가정해 보겠습니다. 과연 구글이 이전 주소로 색인한 페이지와 유사하다고 하여 오랜기간 새 주소를 검색 결과로 노출시키지 않을까요? 그렇다면 검색엔진으로서 큰 결점일 것 입니다.

당연히 구글도 좋은 글은 주소가 변경되어도 노출시키길 원할 것이고, 실제로 구글이 이를 위해 제시하는 가이드라인이 있습니다. 저는 이 가이드라인을 따라 시도해 보았고, 시간이 좀 소요되었지만 새 주소로 포스팅이 최상단에 노출되는 것을 확인할 수 있었습니다.

구글의 도메인 변경 가이드라인

사실 원래부터 구글은 주소 변경을 위한 방법을 명확하게 알려주고 있었습니다. 그저 여러 방법 중 일부가 티스토리에서는 불가능했던 것 뿐이죠. 아래 링크를 확인하면 구글이 소개하는 주소 변경 방법을 확인할 수 있습니다.

301 리디렉션 Redirection – 티스토리에서 불가

정황상 구글에서 가장 선호하는 주소변경 방법은 정석대로 301 리디렉션이라는 방식을 사용하여 기존 주소로 접속 시 새 주소로 돌려주는 기능으로, 일종의 업계 표준입니다. 애초에 설정 자체를 서버 운영자만 설정할 수 있기도 하고, 301 자체가 영구적인 주소 변경을 의미한다고 되었기 때문에 구글 엔진도 직관적으로 인식할 수 있습니다.

이는 구글의 설명에도 잘 적혀있는데, 301과 같은 ‘서버 측 리디렉션’, 즉 확실하게 서버 운영자가 설정한 것으로 볼 수 있는 표준 리디렉션은 검색 노출 순위 (PageRank)에 영향을 주지 않는다고 합니다.

구글은 친절하게도 주소 변경시 301 리디렉션이 설정된 웹사이트에 대해 ‘이사’ 기능을 제공하고 있습니다. 즉, 서버 운영자가 취할 수 있는 간단한 조건만 맞추면 자동으로 검색엔진에도 이를 반영할 수 있는 편리한 기능입니다.

(단, 단점도 있는데, 이는 추후 실제 사용 기록과 함께 별도의 포스팅에서 소개드려보도록 하겠습니다.)

문제는, 티스토리 블로그는 301 리디렉션 기능을 제공하지 않습니다. 여러 이유가 있겠지만, 기본적으로 다른 플렛폼으로 옮길 때 많이 사용하게 되는 기능이기 때문에 이동을 어렵게하기 위함일 수도 있고, 티스토리 서버를 리디렉션 용도로만 사용하는 의도와 다른 사용을 막기위함일 수도 있습니다. 쉽게 보면 티스토리의 집주인은 카카오고 블로거들은 세입자기 때문에 주인이 안된다고 막아둔건 어찌할 방법이 없죠.

Canonical Tag – 티스토리에서 가능

301 리디렉션은 불가능해도 중복을 피할 수 있는 길은 있습니다. 바로 ‘Canonical’ Tag 라는 기능을 이용하는 것 입니다. 실제로 구글의 가이드를 보면 301과 함께 ‘Canonical’ tag 역시 원조 페이지를 나타내는 강력한 신호(Strong Signal) 라고 되어 있습니다.

canonical signal 1

Canonical Tag는 무엇인가

간단히 말하면 주소가 다른 여러 중복글이 있는 상황이라고 해도 그 중 어느 주소가 ‘원조’ 인지를 지정하는 기능 입니다. 만약 구글이 중복이라고 생각하는 글이 100개가 있다고 하더라도 100개의 글이 모두 하나의 주소를 원조로 가리키고 있다면, 구글 검색엔진도 쉽게 원조를 가려내고 원조글을 검색 결과에 노출시킬 수 있게 됩니다.

Canonical Tag 추가 방법

기본적으로는 각 페이지 html에 아래와 같은 코드 한줄만 있으면 됩니다.

<link rel="canonical" href="https://one.kongineer.com/207">

이 한줄이 의미하는 바는 ‘이 글의 원조는 [https://one.kongineer.com/207] 주소다’ 라는 것 입니다. 티스토리라면 티스토리 기본 도메인으로 접속한 페이지에 위와 같이 2차 도메인 주소를 적어두면 구글은 2차 도메인으로 된 주소를 ‘원조’라고 인식하게 되는 것 입니다.

이와 관련하여 검색을 해보면 간혹 메인 도메인 하나만 지정하면 된다는 글이 있지만, 제가 추측하기로는 각 포스팅에 대해 1대1로 새로운 링크를 지정해야 합니다. 즉, 모든 포스팅 html에 각각의 새 주소가 적혀야 합니다.

만약 저와같이 포스팅 번호로 되어있거나 세부주소는 유지하고 있다고 한다면 javascript를 이용해 자동으로 붙이도록 할 수 있습니다.

<script>
	// Canonical Tag 붙이기 (출처: phd.kongineer.com)
	document.addEventListener("DOMContentLoaded", function() {
        // Define the base URL
	var baseURL = "여기에 새(2차) 도메인 입력";

	// Get the current path
	var currentPath = window.location.pathname;

	// Create the full canonical URL
	var canonicalURL = baseURL + currentPath;

	// Check if canonical tag already exists
	var canonicalElement = document.querySelector("link[rel=canonical]");

	// If not, create a new canonical element
	if (!canonicalElement) {
		canonicalElement = document.createElement("link");
		canonicalElement.setAttribute("rel", "canonical");
        	document.head.appendChild(canonicalElement);
	}

	// Set the canonical URL
        canonicalElement.setAttribute("href", canonicalURL);
	});
</script>

위 코드에서 baseURL에 새로 등록하는 도메인을 입력하고 티스토리 html에 적용하면, 각 포스팅에 세부주소를 붙여 자동으로 canonical tag를 붙이게 됩니다. 적용은 [스킨 편집]-[html 편집] 에서 <head>와 </head> 사이에 붙여넣고 [적용]을 누르면 됩니다.

정상적으로 적용되면, 브라우저의 [개발자 모드]로 페이지 소스코드를 열어 티스토리의 모든 포스팅에서 아래 canonical tag가 붙은 것을 확인할 수 있습니다.

canonical tag

구글 서치콘솔 Search Console에서 확인하기

적용이 정상적으로 완료되었다면 구글에서도 잘 인식할 수 있는지 서치콘솔에서 테스트해볼 수 있습니다. 블로그 글 중 아무 글이나 테스트 해보고자 하는 글 주소를 서치콘솔 상단에 입력 후 상태를 확인해봅니다.

새로운 글이 아니라 원래 색인되어 구글 검색에 노출되고 있었던 페이지라면, 아래와 같이 원래 주소가 canonical로 색인되어 있는 것을 알 수 있습니다. 여기서 우측 상단 [Test Live URL] (한국어로는 [실제 URL 테스트]) 버튼을 눌러보면 새로 인식하는 canonical을 확인할 수 있습니다.

prev canonical ccur canonical c
구글 서치콘솔 Canonical (위: 기존 색인, 아래: 현재 페이지)

색인 요청 및 기다리기

Canonical이 제대로 적용된 것을 확인하였다면 이제 구글이 이를 적용하길 기다리는 일만 남았습니다. 일부 글에 대해서는 더 빨리 적용을 받기 위해 색인 요청을 할 수 있지만, 하루에 요청할 수 있는 수가 정해져 있어, 포스팅이 많다면 모두 색인 요청을 하기는 쉽지 않습니다. 가장 빨리 적용되길 원하는 일부 포스팅만 색인을 요청하고, 나머지는 기다는 것이 좋겠습니다.

새 주소로 Search Console 시작하기

양쪽 페이지에서 모두 같은 주소를 Canonical로 지정하고 있는 상태가 구글 엔진 반영에 더 유리하기 때문에, 기존 도메인에 Canonical이 적용되는 동안 새로운 도메인으로도 서치콘솔을 열어 양쪽에서 색인이 되도록 하는 쪽이 더 좋은 것으로 보입니다. 특히, 새 도메인으로 된 Sitemap을 등록하면 서치콘솔이 이를 인식하여 새 도메인으로 된 포스팅들을 자동으로 색인하기 때문에 없을때 보다 더 빠른 색인을 기대할 수 있습니다.

중복글로 확인되어도 기다리기

구글 서치엔진이 Canonical을 변경하는 과정에서 일부 글에 대해 ‘중복글’로 확인되어 구글 검색에 노출되지 않는다는 알림을 받게될 수 있습니다. 아래와 같은 내용인데, 이는 서치엔진 내부적으로 처리 순서에 따라 일시적으로 발생되는 것으로 보입니다. 1~2주 정도 지나면 해결되는 것으로 보았는데, 이 기간동안 유입이 줄어드는 것은 어쩔 수 없을 것 같습니다.

canonical-duplicate-도메인
구글 서치콘솔이 판단한 ‘원조’와 사용자가 지정한 ‘원조’가 다르면 문제가 되지만, 시간이 지나면 해결되는 것으로 보임
dub val
시간이 지나면 이렇게 해결되는 경우가 많습니다.

직접 확인해보지는 않은 저의 추측인데, 아래 순서로 차례대로 기다리면서 진행하면 전체적으로는 몇 주 더 오래 걸려도 중복에 걸려 유입이 일시적으로 감소하는 상황을 피할 수 있을 것도 같습니다.

  • 기존 도메인으로 된 페이지에 대해 Canonical이 적용되도록 기다리기 (2~4주 예상)
  • 새 주소로 된 서치콘솔 열고 색인 시작하기 (2~4주 예상)

결과 확인하기

정상적으로 Canonical을 적용하고 2~3주 정도 기다리면 슬슬 새로운 주소로 유입이 증가하는 것을 확인할 수 있습니다. 구글에서 검색해 보니 원래 상단에 노출되던 글이 변경한 2차 도메인으로 바뀌어 나오는 것을 확인할 수 있습니다.

google exp

동시에 기존 티스토리 주소로의 유입은 줄어드는 것도 확인할 수 있습니다. 둘 중 하나만 노출시키는 구글 엔진 특성상 당연한 현상 입니다.

Javascript 리디렉션

검색하여 찾을 수 있는 많은 글에서 Javascript을 이용한 리디렉션은 구글에서 인식할 수 없다는 쪽으로 소개하는 것을 확인하였으나, 구글의 가이드라인은 조금 다른 내용을 담고 있습니다.

java
red goog
출처: https://developers.google.com/search/docs/crawling-indexing/301-redirects?hl=ko

위 내용을 종합해보면, 가급적 301 리디렉션을 사용하는 것이 좋고 반영도 더 빠르지만, 다른 옵션이 없다면 차선으로 Javascript 리디렉션을 사용해도 구글에서 반영할 수 있다는 내용 입니다.

저는 우선 Canonical을 적용 후 실패하게 되면 Javascript 리디렉션을 시도해보고자 하였으나, Canonical tag로 잘 반영되어 아직 시도해보지는 않았습니다. 혹시 일부 포스팅이 Canonical tag 만으로는 구글 검색에 노출되지 않으면 (혹은 반영이 너무 늦으면) Javascript를 이용한 리디렉션을 추가해 볼 예정입니다.

정리

이번 포스팅에서는 소문만 무성한 구글 검색순위를 유지하면서 티스토리 2차 도메인으로 변경하는 방법에 대해 저의 결과와 함께 소개드렸습니다. 저의 경험으로는 시간이 조금 필요할 뿐 불가능하거나 어려운 일은 아닌 것으로 보이니, 저와 같이 티스토리 기본주소로 블로그를 운영하던 중 새로운 도메인을 연결하여 사용하고자 하시는 분께서는 참고하시면 도움이 되실 것 같습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다