도메인 변경에 따른 SEO 설정 통합
목차
블로그의 도메인을 werebridge.com에서 새로운 주소로 이전했다. 단순히 호스팅 주소를 바꾸는 것이 아니라, 검색 엔진 최적화(SEO)부터 메타정보까지 일괄으로 정리해야 하는 일이었다.
도메인 이전, 모든 게 연쇄적으로 움직인다
정적 사이트 제너레이터로 만든 블로그에서 도메인을 바꾼다는 건 단순한 DNS 변경만을 의미하지 않는다. 빌드 타임에 결정되는 canonical URL부터 시작해서, 검색 엔진이 크롤링할 때 참고하는 robots.txt, 그리고 사용자가 보는 footer의 링크까지 모든 게 도메인과 얽혀있기 때문이다.
특히 SEO 관점에서 조심해야 할 부분이 있다. 구글이나 네이버 같은 검색 엔진은 도메인 변경을 감지했을 때, 이전 도메인의 페이지를 어떻게 처리할지를 canonical URL과 robots.txt를 통해 판단한다. 제대로 설정하지 않으면 검색 결과에서 순위가 떨어지거나, 예전 도메인의 페이지가 계속 노출되는 일이 발생한다. 이건 단순히 기술적 문제를 넘어 블로그의 신뢰도에까지 영향을 미친다.
내가 이번 작업에서 변경해야 했던 것들은 크게 두 가지였다. 하나는 빌드 설정 레벨(astro.config.mjs, consts.ts)에서 도메인을 한 곳에 정의하고, 다른 하나는 그것을 참고하는 모든 곳이 제대로 인식하도록 하는 것.
변경된 파일들과 의미
| 파일 | 변경 이유 | 설명 |
|---|---|---|
| astro.config.mjs | site URL 업데이트 | Astro의 canonical URL 생성 기준점. 이 값이 바뀌면 모든 페이지의 <link rel="canonical"> 태그가 자동으로 새 도메인을 가리킴 |
| consts.ts | 상수 정의 변경 | 애플리케이션에서 사용하는 도메인 상수를 한 곳에서 관리. Footer나 메타 정보에서 이 상수를 참고 |
| robots.txt | 도메인 참조 수정 | Sitemap URL이 도메인을 포함하므로 업데이트 필요. 이제 새 도메인의 sitemap을 검색 엔진에 제시 |
| Footer.astro | 링크 업데이트 | 사용자에게 보이는 footer의 링크가 여전히 이전 도메인을 가리키지 않도록 정리 |
| about.astro | 메타 정보 일관성 | About 페이지에서도 도메인이 하드코딩되어 있다면 제거하고 상수 참고로 변경 |
| README.md | 문서 업데이트 | 프로젝트 README에서 블로그 URL 예시나 참고 자료가 있으면 새 도메인으로 정정 |
astro.config.mjs가 핵심이다. Astro는 site 설정값을 읽어서 모든 페이지의 canonical 태그를 생성하고, OG 메타 태그의 URL도 채운다. 이 한 곳만 제대로 맞춰두면, 뷰 단에서 일일이 수정할 필요가 줄어든다. 다만 마지막 점검은 필수다. robots.txt처럼 파일 안에 도메인을 직접 문자열로 갖는 경우는 자동으로 반영되지 않기 때문이다.
도메인 이전 때 놓치기 쉬운 부분들
이번 작업을 거치면서 느낀 것은, 도메인 이전이 단순 운영 작업처럼 보이지만 실은 여러 관심사가 얽혀있다는 점이다.
첫째, canonical 태그는 "검색 엔진을 속이는" 도구가 아니다. 나는 한때 canonical을 "이 페이지의 올바른 버전을 여기로 봐달라"는 신호정도로 생각했는데, 실제로는 좀 더 무겁다. 도메인 변경 후 일정 기간 동안 검색 엔진은 canonical을 참고해 이전 도메인의 인덱싱을 천천히 줄여나간다. 그러니까 canonical을 제대로 설정하는 것 자체가 검색 순위 보존의 첫 단계다.
둘째, 정적 파일들(robots.txt, sitemap.xml)도 빌드 프로세스에 포함되는지 확인해야 한다. 내 경우 robots.txt는 public 폴더에 있었기에 수동으로 수정해야 했다. 만약 이 파일들을 동적으로 생성하는 구조라면, 빌드 스크립트에서 도메인 상수를 참고하도록 세팅하는 게 좋다. 그래야 나중에 도메인을 또 바꿀 일이 생겼을 때 한 곳만 수정하면 된다.
셋째, 컴포넌트나 레이아웃에 도메인이 하드코딩되어 있지는 않은지 확인하기. footer처럼 사용자에게 보이는 곳은 물론이고, 외부 API를 호출할 때도 도메인이 들어갈 수 있다. 이런 부분들은 검색하기 쉬운데 놓치기도 쉽다. 그래서 변경 파일 리스트를 다시 한 번 읽어보는 습관이 중요하다.
팀에 이런 작업을 인수인계할 때도 "도메인 변경" 하나의 이슈로 끝내지 말고, "설정 한 곳"과 "참고하는 모든 곳"을 체크리스트화해서 전달하는 게 낫다. 그렇게 해야 누군가 실수로 한두 군데를 빠뜨리는 일이 줄어든다.
🛒 이 글과 어울리는 추천 상품
*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.
댓글 0
첫 댓글 달아줘.