2026/08/30

워드프레스에서 블로거닷컴으로 마이그레이션 진행한 과정

이번 워드프레스에서 블로거닷컴으로 마이그레이션 한 과정이다. 지나고 나서 되새겨 본 것이라 100% 정확하지는 않다. 게시물과 이미지를 가져왔고 댓글은 제외했다. 데이터 내에서 값을 찾고 변환하는 과정, 클라우드플래어 R2스토리지 API와 구글 블로거 API 활용 과정은 제미나이와 챗지피티의 도움을 받았다. 개발 언어는 파이썬이다. 

  1. 워드프레스의 tool → export 로 게시물 내보내기. 
  2. 이 xml은 블로거닷컴에서 인식할 수 없는 형식이므로 워드프레스에 ForthFocus Atom XML Converter for Blogger™ 확장기능을 설치한다. 위에서 받은 xml을 이 플러그인에 업로드해서 블로거닷컴에서 인식할 수 있는 형태로 변환하여 다운로드. 
  3. 이미지 파일은 워드프레스 백업,복원으로 유명한 updraftplus로 다운받아 압축을 풀어 한 폴더에 모음. 
  4. 원본 이미지는 "이미지파일명.jpg(또는 png)"인데 "이미지파일명-가로x세로.jpg (또는 png)"로 추가 생성된 이미지가 많아 이 이미지들은 별도로 제외시킴. 단, 원본 이미지 이름 자체가 이 형식일 가능성이 없는지 확인해야 함.
  5. 블로거닷컴으로 옮긴 게시물에 이미지를 일괄적으로 제 위치에 꽂아넣는 방법이 마땅치 않아 cloudflare의 r2 스토리지에 img.hof.pe.kr 도메인을 할당하고 여기에 이미지 원본 전체를 옮김. API키를 받아 rclone으로 전송했고 hof.pe.kr/wp-content/uploads/aaa.jpg 이미지는 이제 img.hof.pe.kr/aaa.jpg가 됐음. r2 스토리지 메뉴에서 도메인 할당하면 자동으로 클라우드플래어 NS에 항목이 추가됨. 
  6. 블로거닷컴용 xml 파일에서 기존 이미지 URL 및 상대경로 (예: /wp-content/uploads/aaa.jpg)로 지정된 경우까지 찾아 img.hof.pe.kr 쪽을 바라보도록 변경
  7. 블로거닷컴에 atom xml 파일을 올려 일단 게시물의 새로운 퍼머링크를 할당 받음. 
  8. google blogger API로 새로 올린 전체 게시물의 제목, 작성일, 퍼머링크를 받아옴. 
  9. 이 파일과 최초 워드프레스에서 다운받은 xml 에서 날짜와 제목을 기준으로 비교하여 같은 게시물의 워드프레스에서의 퍼머링크와 블로거닷컴으로 옮긴 후 새로 받은 퍼머링크 간 변환 테이블 생성 
  10. 대략 이때쯤 블로거닷컴에서 사용자 지정 도메인을 사용하기로 하고 네임서버에서 도메인의 A레코드를 AWS Lightsail 인스턴스에서 블로거닷컴 쪽으로 변경 
  11. 게시물 내에서 a href 링크가 나 자신(기존 워드프레스 때 퍼머링크)으로 향하는 경우가 있는지를 찾아 별도의 csv로 저장, 9번에서 만들어 둔 매칭 테이블을 활용하여 blogger API로 새 블로거닷컴의 퍼머링크로 교체, 업데이트

테마파일을 설치하고 보니 첨부한 이미지가 본문 레이아웃의 오른쪽으로 뚫고 나가는 경우가 있어 CSS를 수정했다. 별 내용없던 기존 about 페이지는 폐기하고 새로 블로그소개 페이지를 만들어 두었다.