CMS 마이그레이션은 기술 작업이 완벽하게 굴러가도 결과는 재앙일 수 있는, 몇 안 되는 종류의 프로젝트입니다. 사이트는 일정에 맞춰 공개되고, 보기에 더 좋아지고, 더 빨리 뜨는데, 트래픽은 절반으로 떨어집니다. 수백 개의 주소가 모양을 바꾸었는데 아무도 그 대응표를 만들지 않았기 때문입니다.

트래픽 손실을 일으키는 것은 새 플랫폼이 아닙니다. 단절이 일으킵니다. 예전에는 응답하던 주소가 이제 응답하지 않고, 식별 가능하던 페이지가 새 페이지처럼 보이며, 옛 주소에 몇 년간 쌓여 있던 이력은 옮겨 갈 곳을 잃습니다. 그래서 순위는 공개 당일이 아니라 몇 주에 걸쳐 조용히 내려앉습니다.

결과를 가르는 단 하나의 결정은 이것입니다. URL 구조를 유지할 것인가? 유지한다면 마이그레이션은 대체로 콘텐츠와 템플릿 작업에 가깝고 위험은 크지 않습니다. 유지하지 않는다면 바뀐 주소마다 그에 정확히 대응하는 곳으로 향하는 리다이렉트가 필요하고, 그 대응표가 얼마나 빠짐없이 채워졌는지가 마이그레이션이 눈에 띄지 않게 지나갈지 비싸게 끝날지를 결정합니다. URL이 바뀌었는데도 어쩌다 잘 풀리는 세 번째 선택지는 없습니다.


CMS 마이그레이션이 실제로 망가뜨리는 것

URL, 그리고 이것이 가장 큰 항목입니다. 플랫폼마다 경로, 페이지 나누기, 카테고리, 날짜를 다루는 관례가 다르고, 새 플랫폼의 기본값을 그대로 받아들이는 순간 사이트의 모든 주소가 조용히 다시 쓰입니다. 슬러그 한 조각, 날짜 한 조각이 붙거나 빠지는 것만으로도 사이트 전체가 다른 주소 체계로 넘어갑니다.

메타데이터. 몇 년에 걸쳐 다듬어 온 제목과 설명은 내보내기에서 살아남지 못하는 경우가 많고, 새 플랫폼은 그것을 템플릿에서 자동으로 만들어 냅니다. 페이지 자체는 멀쩡해 보이기 때문에 놓치기 쉽습니다.

구조화된 데이터. 옛 플랫폼에서 플러그인이 붙여 주던 마크업은 그 플러그인과 함께 사라지고, 새 플랫폼의 대체 기능이 똑같은 출력을 내보내는 일은 드뭅니다. AI 검색엔진이 스키마 마크업을 읽는 방식을 다룬 안내서에 무엇이 살아남아야 하는지 정리해 두었습니다.

내부 링크. 본문에 박혀 있는 옛 경로의 절대 링크는 계속 그 경로를 가리키고, URL이 바뀐 뒤에는 그 링크 하나하나가 잘해야 리다이렉트를 한 번 거쳐 도착한다는 뜻이 됩니다.

이미지와 미디어. 저장 경로가 다르고, 파일 이름이 다르며, 옛 데이터베이스에만 들어 있던 대체 텍스트는 내보내기에 포함되지 않습니다.

플러그인이 대신 해 주던 모든 일. 몇 년에 걸쳐 설정해 둔 리다이렉트, 표준 URL 규칙, 피드 형식, 그리고 체크박스 하나였기 때문에 아무도 문서로 남기지 않은 기능들입니다.

이 모두를 마이그레이션 전에 목록으로 만드세요. 끝난 뒤가 아닙니다. 옛 플랫폼이 조용히 대신 해 주던 일의 목록은 언제나 예상보다 깁니다.

리다이렉트 맵이 모든 것을 결정한다

URL이 바뀐다면 결국 중요한 산출물은 이것 하나이며, 거의 완성이 아니라 완성이어야 합니다.

원본 목록은 한 곳이 아니라 여러 곳에서 모으세요. 운영 중인 사이트를 크롤링하면 링크로 연결된 것이 나옵니다. 애널리틱스와 서치 콘솔은 트래픽은 들어오지만 어디에서도 링크되지 않은 고아 페이지를 찾아 줍니다. 서버 로그는 외부 사이트가 걸어 둔 링크를 포함해 실제로 요청되는 것을 찾아 줍니다. 어느 한 가지 출처만 쓰면 반드시 빠지는 것이 생기고, 빠지는 페이지는 유독 오래되고 링크가 많이 달린 쪽에 몰립니다.

옛 URL마다 그에 정확히 대응하는 새 URL을 지정하세요. 홈페이지도 아니고 카테고리 페이지도 아닙니다. 원래 요청에 답하지 못하는 곳으로 보내는 리다이렉트는 소프트 오류로 취급되어 넘겨주는 가치가 거의 없기 때문입니다. Google의 사이트 이전 문서가 기대하는 매핑을 정리해 두었습니다. 정말로 대응하는 것이 없다면 찾을 수 없음 응답을 돌려주는 편이 정직하고, 오해를 부르는 리다이렉트보다 낫습니다.

영구 리다이렉트를 쓰고, 옛 주소를 최종 목적지로 곧장 보내 연쇄를 한 번으로 유지하세요. 그리고 리다이렉트 규칙은 위에서부터 차례로 평가되므로, 넓은 패턴이 구체적인 규칙보다 위에 있으면 그 규칙을 삼켜 버린다는 점을 기억하세요.

그런 다음 공개 전에 표본이 아니라 전체 목록으로 대응표를 검증하세요. 주소마다 어떤 상태 코드로 어디에 도착하는지 기록해 두면, 공개 이후의 대조가 훨씬 수월해집니다.

전환하기 전에

옛 사이트를 크롤링해서 보관하세요. 모든 URL의 제목, 설명, 표준 URL, 상태 코드, 단어 수를 담은 완전한 기록입니다. 이것이 비교 기준선이고, 일이 끝난 뒤에는 다시 만들 수 없습니다.

콘텐츠를 내보내고 검증하세요. 내보내기가 돌았다는 사실이 아니라 건수를 확인해야 합니다. 카테고리 누락, 사용자 정의 필드 유실, 글 잘림은 모두 흔하고 모두 소리 없이 일어납니다.

차단된 환경에 스테이징하세요. 색인되는 스테이징 사이트는 사이트 전체의 중복본을 만들어 내며, 이는 원래 풀려던 문제보다 더 나쁜 문제입니다.

새 템플릿이 옛 템플릿과 같은 것을 내보내는지 확인하세요. 제목, 설명, 표준 URL, 구조화된 데이터, 그리고 여러 언어를 운영한다면 hreflang까지 포함해서입니다. 다국어 SEO 안내서에서 자세히 다루었습니다.

시점을 계획하세요. 가장 바쁜 시기 직전은 피하고, 금요일도 피하세요. 전환 직후 며칠은 온전히 집중할 수 있는 근무일이 필요합니다. 지켜보기만 하는 인원이 아니라, 바로 배포하고 고칠 수 있는 인원이어야 합니다.

전환한 뒤에

처음 마흔여덟 시간이 그 뒤의 한 달보다 중요합니다. 고칠 수 있는 오류가 아직 싸게 먹히는 구간이기 때문입니다.

서버 로그에서 찾을 수 없음 응답을 지켜보세요. 대응표가 놓친 URL을 찾는 가장 빠른 방법이고, 당신의 추측이 아니라 실제 요청에서 찾아 줍니다. 새 사이트맵을 제출하고, 크롤링이 실제로 일어나고 있는지 넘겨짚지 말고 확인하세요.

기준선 크롤과 대조하세요. 이전에 색인 가능하던 URL은 이제 응답하거나 구체적인 곳으로 리다이렉트되어야 합니다. 둘 다 아닌 것은 구멍입니다.

일시적인 하락은 예상하세요. 잘 실행된 마이그레이션에서도 몇 주 정도의 변동은 정상입니다. 새 주소를 다시 크롤링하고 다시 평가해야 하기 때문입니다. 정상이 아닌 것은 회복되지 않고 이어지는 하락이며, 그 원인은 거의 언제나 빠뜨렸거나 두루뭉술한 곳으로 보낸 리다이렉트로 되돌아갑니다.

리다이렉트는 영구히 유지하세요. 임시 조치가 아니라, 몇 년간 쌓인 링크와 지금의 페이지를 잇는 유일한 연결이며, 일 년 뒤에 걷어 내면 원래의 손실을 그대로 다시 만들어 냅니다.

Mecanik은 이런 유형의 마이그레이션을 웹 개발 업무의 일부로 진행합니다. 패턴은 늘 같습니다. 플랫폼 교체 자체는 일상적인 작업이고, 좋은 결과와 나쁜 결과를 가르는 것은 전적으로 대응표가 얼마나 빠짐없이 채워졌는가입니다.



자주 묻는 질문

CMS 마이그레이션 후에 트래픽이 떨어지는 이유는 무엇인가요? 거의 언제나 URL이 바뀌었는데 리다이렉트 맵이 불완전했기 때문입니다. 옛 주소가 응답을 멈추면 몇 년간 쌓인 링크와 크롤링 이력이 갈 곳을 잃습니다. 손실을 일으키는 것은 플랫폼 자체가 아니라 옛 주소와 새 주소 사이의 단절입니다.

CMS를 바꿀 때 URL 구조를 유지해야 하나요? 가능하다면 유지하세요. 구조를 유지하면 마이그레이션은 위험이 크지 않은 콘텐츠와 템플릿 작업으로 줄어듭니다. 구조를 바꾼다면 변경된 주소마다 정확히 대응하는 곳으로 향하는 리다이렉트가 필요하고, 그 매핑이 얼마나 빠짐없이 채워졌는지가 마이그레이션이 눈에 띄지 않을지 비싸게 끝날지를 결정합니다.

리다이렉트할 URL 목록은 어디에서 얻나요? 여러 출처에서 얻습니다. 어느 하나도 빠짐없이 잡아내지 못하기 때문입니다. 운영 사이트 크롤링은 링크된 페이지를, 애널리틱스와 서치 콘솔은 트래픽은 있으나 고아일 수 있는 페이지를, 서버 로그는 외부 링크를 포함해 실제로 요청되는 것을 찾아 줍니다. 한 출처만으로 놓치는 페이지는 대개 링크가 달린 오래된 페이지입니다.

옛 페이지를 홈페이지로 리다이렉트해도 되나요? 안 됩니다. 원래 요청에 답하지 못하는 곳으로 보내는 리다이렉트는 소프트 오류로 취급되어 넘겨주는 가치가 거의 없습니다. 옛 URL마다 정확히 대응하는 곳을 지정하고, 정말로 대응하는 것이 없다면 찾을 수 없음 응답을 돌려주는 편이 오해를 부르는 리다이렉트보다 정직하고 유용합니다.

마이그레이션 리다이렉트는 얼마나 오래 유지해야 하나요? 영구히 유지해야 합니다. 임시 조치가 아니라 몇 년간 쌓인 인바운드 링크와 지금의 페이지를 잇는 유일한 연결이므로, 일 년 뒤에 걷어 내면 마이그레이션이 피하려 했던 바로 그 트래픽 손실이 그대로 재현됩니다.