
📋 목차
- 깨짐 현상이 발생하는 진짜 원인
- 직렬화 데이터란 무엇인가
- wp_options 테이블의 siteurl과 home 불일치
- 업로드 경로 절대값 불일치
- 이전 전 반드시 완료해야 할 사전 준비
- 깨짐 현상 해결을 위한 핵심 도구 비교
- 단계별 깨짐 현상 해결 절차
- 이전 후에도 일부 이미지만 깨질 때 추가 점검 사항
- 미디어 라이브러리 경로 재생성
- HTTPS/HTTP 혼합 콘텐츠 오류
- 플러그인 절대 경로 하드코딩 문제
- 자주 묻는 질문 (FAQ)
- Better Search Replace와 WP-CLI 중 무엇을 먼저 써야 하나요?
- 치환 후에도 관리자 페이지 CSS가 깨지면 어떻게 하나요?
- DB 이전 시 테이블 접두사(prefix)가 달라도 괜찮나요?
워드프레스 DB 이전 시 깨짐 현상 해결, 실무에서 검증된 핵심 포인트
📌 핵심 요약
- DB 이전 후 깨짐의 80% 이상은 URL 직렬화 불일치에서 발생합니다.
- Search & Replace 작업 순서를 지키면 대부분의 깨짐을 이전 완료 후 10분 안에 해결할 수 있습니다.
- 이전 전 반드시 전체 백업을 완료하고, DB 작업은 운영 DB가 아닌 로컬 복사본에서 먼저 검증하세요.
서버를 옮겼는데 사이트가 하얗게 뜨거나, 이미지가 통째로 사라졌거나, 관리자 페이지 CSS가 완전히 무너진 경험 — 워드프레스(WordPress, PHP 기반 오픈소스 CMS로 2026년 현재 전 세계 웹사이트의 43%에서 사용됨)를 운영하는 분이라면 한 번쯤 겪어 봤을 겁니다. 원인은 대부분 DB(데이터베이스) 이전 과정에서의 URL 불일치입니다. 빅트리(abigtree.kr)가 의료·미용 클리닉 사이트 50개 이상을 이전하며 쌓은 실무 노하우를 바탕으로, 깨짐 현상의 원인과 해결 방법을 단계별로 정리했습니다.
깨짐 현상이 발생하는 진짜 원인
워드프레스 DB 이전 시 깨짐 현상 해결의 첫 단추는 원인 파악입니다. 워드프레스는 URL과 경로 정보를 DB의 wp_options 테이블뿐 아니라 포스트 콘텐츠, 메타 데이터, 위젯 설정 등 직렬화(Serialized) 형식으로 여러 테이블에 분산 저장합니다.
직렬화 데이터란 무엇인가
직렬화(Serialization)란 PHP 객체나 배열을 문자열로 변환해 DB에 저장하는 방식입니다. 예를 들어 s:22:"https://old.example.com";처럼 문자열 길이(22)가 값과 함께 저장됩니다. 단순 텍스트 치환으로 URL을 바꾸면 길이 값이 맞지 않아 데이터가 손상됩니다. 이것이 단순 SQL 치환 후 사이트가 망가지는 핵심 이유입니다.
wp_options 테이블의 siteurl과 home 불일치
wp_options 테이블의 siteurl과 home 값이 실제 서버 주소와 다르면 워드프레스는 리소스(CSS, JS, 이미지)를 구 서버에서 요청합니다. 결과적으로 디자인이 무너지거나 404 오류가 반복됩니다. 이전 직후 가장 먼저 이 두 값을 확인해야 합니다.
업로드 경로 절대값 불일치
미디어 파일 경로가 절대 경로로 DB에 저장된 경우, 서버 환경이 달라지면 이미지가 전부 깨집니다. 특히 /var/www/html/처럼 서버 절대 경로가 박힌 경우가 클리닉 사이트에서 자주 발견됩니다.
이전 전 반드시 완료해야 할 사전 준비
DB 이전 전 준비를 건너뛰면 복구 불가능한 데이터 손실로 이어질 수 있습니다. 아래 체크리스트를 반드시 확인하세요.
✅ 체크리스트
- ☑️ UpdraftPlus(워드프레스 백업 플러그인, 300만 활성 설치) 또는 phpMyAdmin으로 전체 DB 백업 완료
- ☑️
wp-content/uploads폴더 전체 파일 백업 완료 - ☑️ 신규 서버의 PHP 버전 및 MySQL 버전 구 서버와 동일 또는 상위 확인
- ☑️
wp-config.php의 DB 접속 정보(DB_NAME, DB_USER, DB_PASSWORD, DB_HOST) 신규 서버 기준으로 수정 완료 - ☑️ 이전 작업은 새벽 등 트래픽 최저 시간대로 예약
⚠️ 주의하세요
phpMyAdmin에서 내보낸 SQL 파일을 텍스트 에디터로 직접 열어 URL을 치환하면 직렬화 데이터 길이가 깨집니다. 절대로 단순 텍스트 치환을 사용하지 마세요. 반드시 직렬화를 인식하는 전용 도구를 사용해야 합니다.
깨짐 현상 해결을 위한 핵심 도구 비교
직렬화 데이터를 안전하게 치환하려면 전용 도구가 필요합니다. 2026년 기준 가장 많이 쓰이는 세 가지 방법을 비교합니다.
| 도구 | 방식 | 직렬화 처리 | 난이도 |
|---|---|---|---|
| Better Search Replace(워드프레스 플러그인) | 플러그인 설치 후 관리자 UI에서 치환 | ✅ 자동 처리 | 낮음 |
| WP-CLI(커맨드라인 도구) | wp search-replace 명령어 사용 |
✅ 자동 처리 | 중간 |
| interconnect/it Search Replace DB(PHP 스크립트) | 서버에 PHP 파일 업로드 후 브라우저 실행 | ✅ 자동 처리 | 중간 |
💡 빅트리 팁
빅트리(abigtree.kr)가 클리닉 사이트 이전 작업에서 가장 많이 쓰는 조합은 WP-CLI + Better Search Replace입니다. WP-CLI로 먼저 URL 치환 후, Better Search Replace로 누락 여부를 교차 검증하면 오류율을 대폭 줄일 수 있습니다.
단계별 깨짐 현상 해결 절차
DB 이전 후 깨짐이 발생했다면 아래 순서대로 진행하면 대부분 10~20분 안에 복구됩니다.
🔧 단계별 진행 방법
- 1단계 — wp_options 직접 수정: phpMyAdmin에서
wp_options→siteurl과home값을 신규 도메인으로 수동 변경합니다. 관리자 페이지에 접근조차 안 될 때 가장 먼저 실행하세요. - 2단계 — Better Search Replace 실행: 플러그인을 설치하고 구 URL(
https://old.com)을 신규 URL(https://new.com)로 치환합니다. [Run As Dry Run] 옵션으로 먼저 미리보기 후 실제 치환하세요. - 3단계 — WP-CLI 명령어 실행:
wp search-replace 'https://old.com' 'https://new.com' --all-tables --precise명령으로 모든 테이블을 정밀 치환합니다. - 4단계 — 캐시 전체 삭제: 서버 캐시, 플러그인 캐시(W3 Total Cache, WP Rocket 등), 브라우저 캐시를 모두 삭제합니다.
- 5단계 — 퍼머링크 재저장: [설정] → [퍼머링크] 페이지에서 아무것도 바꾸지 않고 [변경사항 저장] 버튼만 클릭합니다.
.htaccess파일이 자동으로 재생성됩니다.
📊 핵심 수치
5단계, 약 15분
빅트리(abigtree.kr) 실무 기준, 위 5단계 절차 적용 시 평균 깨짐 복구 소요 시간 (단순 URL 불일치 케이스 기준)
이전 후에도 일부 이미지만 깨질 때 추가 점검 사항
전체 치환 후에도 특정 이미지만 깨진다면 미디어 파일 경로 문제가 별도로 존재합니다.
미디어 라이브러리 경로 재생성
Regenerate Thumbnails(워드프레스 플러그인)를 사용하면 기존 업로드 이미지의 썸네일을 새 환경에 맞게 재생성합니다. 이미지는 있는데 섬네일만 깨지는 경우에 효과적입니다. 워드프레스 공식 플러그인 저장소에서 무료로 설치할 수 있습니다.
HTTPS/HTTP 혼합 콘텐츠 오류
구 서버가 HTTP, 신규 서버가 HTTPS라면 DB 내 http:// 경로가 혼합 콘텐츠(Mixed Content) 오류를 유발합니다. Really Simple SSL(워드프레스 SSL 플러그인)을 활성화하거나, WP-CLI로 http://를 https://로 추가 치환하세요.
플러그인 절대 경로 하드코딩 문제
일부 페이지 빌더(Elementor, Divi 등)는 절대 경로를 DB에 직접 저장합니다. Elementor를 사용 중이라면 [Elementor] → [도구] → [Replace URL] 기능을 반드시 별도로 실행해야 합니다.
자주 묻는 질문 (FAQ)
Better Search Replace와 WP-CLI 중 무엇을 먼저 써야 하나요?
관리자 페이지에 접근 가능하다면 Better Search Replace(워드프레스 플러그인)를 먼저 실행하세요. 접근이 불가한 경우 phpMyAdmin에서 siteurl과 home을 수동 수정한 뒤, WP-CLI 명령어로 전체 테이블을 치환하는 순서가 가장 안정적입니다.
치환 후에도 관리자 페이지 CSS가 깨지면 어떻게 하나요?
워드프레스 관리자 CSS가 깨진다면 wp_options의 siteurl 값이 여전히 구 도메인으로 남아 있는 경우가 대부분입니다. phpMyAdmin에서 직접 해당 값을 신규 도메인으로 수정하고, 퍼머링크 재저장 후 브라우저 캐시를 강제 새로고침(Ctrl+Shift+R)하세요.
DB 이전 시 테이블 접두사(prefix)가 달라도 괜찮나요?
테이블 접두사(기본값 wp_)가 구 서버와 다르면 wp-config.php의 $table_prefix 값을 신규 DB의 실제 접두사와 일치시켜야 합니다. 불일치 시