글 목차
워드프레스 사이트 이전 방법 완벽 가이드
워드프레스 홈페이지를 다른 서버나 호스팅 서비스로 이전해야 하는 경우가 있습니다. 이 가이드는 초보자도 별도의 리눅스 명령어 없이 쉽게 따라할 수 있는 방법을 안내합니다.
필요한 프로그램
사전 준비 및 체크리스트
이전 전 필수 준비사항
- 백업 확인: 기존 사이트의 완전한 백업 생성
- 도메인 설정: 새 도메인 DNS 설정 및 네임서버 변경 준비
- SSL 인증서: 새 서버에서 SSL 인증서 설치 계획
- PHP 버전 호환성: 원본과 신규 서버의 PHP 버전 확인
- 플러그인 호환성: 사용 중인 플러그인의 새 서버 호환성 확인
- 데이터베이스 용량: 신규 서버의 데이터베이스 용량 제한 확인
이전 전 체크리스트
- 원본 사이트 전체 백업 완료
- 데이터베이스 백업 완료
- 새 서버 환경 확인 (PHP, MySQL 버전)
- FTP 접속 정보 확인
- 데이터베이스 접속 정보 확인
- SSL 인증서 준비
- 도메인 네임서버 변경 준비
- 이전 작업 시간대 계획 (트래픽이 적은 시간)
1단계: 원본 홈페이지에서 데이터 다운로드
1-1. 웹사이트 파일 다운로드
- FileZilla FTP를 통해 원본 홈페이지에 접속합니다
- 원본 홈페이지의 호스트, 사용자명, 비밀번호를 입력하고 빠른 연결을 클릭합니다
- 서버에 접속되면 wp-admin 폴더를 포함한 서버의 모든 파일들이 표시됩니다
- 모든 파일을 선택하고 마우스 오른쪽 버튼을 클릭하여 다운로드를 선택합니다
- 다운로드 전 왼쪽 로컬 폴더를 확인하고, 필요시 새로운 폴더를 생성하여 정리해주세요
참고: 리눅스 명령어에 익숙한 분은 서버에서 파일을 압축하여 한 번에 다운로드할 수도 있지만, 초보자는 위 방법을 권장합니다.
1-2. 데이터베이스 다운로드
- phpMyAdmin 설치
- phpMyAdmin 프로그램을 공식 사이트에서 다운로드합니다
- 다운로드한 압축파일을 풀고, FileZilla를 통해 서버에 업로드합니다
- 업로드 위치: wp-admin과 동일한 폴더 (루트 디렉토리)
- 폴더명을
phpMyAdmin
으로 변경합니다
- 데이터베이스 백업
- 브라우저에서
https://원본도메인.com/phpMyAdmin
으로 접속합니다 - 데이터베이스 사용자명과 비밀번호로 로그인합니다
- 왼쪽에서 실제 홈페이지 데이터베이스를 선택합니다 (information_schema 제외)
- 우측 상단의 내보내기 버튼을 클릭합니다
- 빠른 내보내기 방법을 선택하고 실행 버튼을 클릭합니다
데이터베이스명.sql
파일이 다운로드됩니다
- 브라우저에서
2단계: 신규 홈페이지에 데이터 업로드
2-1. 웹사이트 파일 업로드
- FileZilla를 통해 신규 홈페이지 서버에 접속합니다
- 원본 사이트에서 다운로드한 모든 파일을 선택합니다 (SQL 파일 제외)
- 선택한 파일들을 신규 서버로 업로드합니다

2-2. phpMyAdmin 업로드 및 데이터베이스 복원
- phpMyAdmin 업로드
- phpMyAdmin 폴더를 신규 서버의 루트 디렉토리에 업로드합니다
https://신규도메인.com/phpMyAdmin
으로 접속하여 정상 작동을 확인합니다
- 기존 데이터베이스 정리
- 신규 서버의 phpMyAdmin에 로그인합니다
- 좌측에서 데이터베이스를 선택합니다
- 우측에 표시된 모든 테이블을 선택하고 삭제합니다
⚠️ 주의: 이 작업은 모든 데이터를 삭제하므로 신중히 진행하세요
- 데이터베이스 복원
- 상단의 가져오기 버튼을 클릭합니다
- 파일 선택에서 원본에서 다운로드한 SQL 파일을 선택합니다
- 실행 버튼을 클릭하여 데이터베이스를 복원합니다
3단계: URL 변경 및 설정 수정
3-1. 데이터베이스 URL 변경
phpMyAdmin의 SQL 탭에서 다음 코드를 실행합니다:
-- 사이트 URL 변경
UPDATE wp_options SET option_value = 'https://신규도메인.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://신규도메인.com' WHERE option_name = 'home';
-- 게시물 내용에서 URL 변경
UPDATE wp_posts SET post_content = REPLACE(post_content, 'https://원본도메인.com', 'https://신규도메인.com');
-- GUID 변경
UPDATE wp_posts SET guid = REPLACE(guid, 'https://원본도메인.com', 'https://신규도메인.com');
-- 메타데이터에서 URL 변경
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'https://원본도메인.com', 'https://신규도메인.com') WHERE meta_value LIKE '%https://원본도메인.com%';
-- 옵션 테이블에서 URL 변경
UPDATE wp_options SET option_value = REPLACE(option_value, 'https://원본도메인.com', 'https://신규도메인.com') WHERE option_value LIKE '%https://원본도메인.com%';
중요: 위 코드에서 https://원본도메인.com
과 https://신규도메인.com
을 실제 도메인으로 변경하여 실행하세요.
3-2. wp-config.php 파일 수정
- 신규 서버에 업로드된
wp-config.php
파일을 다운로드합니다 - 텍스트 에디터로 파일을 열고 다음 내용을 신규 서버 정보로 변경합니다:
- 데이터베이스 이름 (
DB_NAME
) - 데이터베이스 사용자명 (
DB_USER
) - 데이터베이스 비밀번호 (
DB_PASSWORD
) - 호스팅 경로 관련 설정
- 데이터베이스 이름 (
- 수정된 파일을 저장하고 FileZilla를 통해 서버에 다시 업로드합니다
4단계: 보안 강화 및 성능 최적화
4-1. 보안 강화 설정
wp-config.php 보안 설정 추가
/* URL 강제 설정 - URL 문제 해결을 위해 추가 */
define('WP_HOME','https://신규도메인.com');
define('WP_SITEURL','https://신규도메인.com');
/* 보안 강화 설정 */
define('DISALLOW_FILE_EDIT', true); // 파일 편집 비활성화
define('WP_DEBUG', false); // 디버그 모드 비활성화
define('FORCE_SSL_ADMIN', true); // 관리자 페이지 SSL 강제
보안 체크리스트
- 관리자 계정 비밀번호 변경
- 불필요한 사용자 계정 삭제
- WordPress 보안 키 재생성
- 플러그인/테마 최신 버전 업데이트
- 방화벽 설정 확인
4-2. 성능 최적화
데이터베이스 최적화
-- 불필요한 데이터 정리
DELETE FROM wp_posts WHERE post_type = 'revision';
DELETE FROM wp_comments WHERE comment_approved = 'spam';
DELETE FROM wp_posts WHERE post_status = 'auto-draft';
-- 테이블 최적화
OPTIMIZE TABLE wp_posts, wp_comments, wp_options, wp_postmeta;
플러그인 재활성화 권장 순서
- 보안 플러그인 (Wordfence, iThemes Security)
- 백업 플러그인 (UpdraftPlus, BackWPup)
- 캐시 플러그인 (W3 Total Cache, WP Super Cache)
- SEO 플러그인 (Yoast, RankMath)
- 기타 기능 플러그인
5단계: 이전 완료 확인
5-1. 기능 테스트 체크리스트
- 메인 페이지 정상 로딩
- 관리자 페이지 접속 (
https://신규도메인.com/wp-admin
) - 로그인/로그아웃 기능
- 게시글 작성/수정 기능
- 댓글 기능
- 검색 기능
- 연락처 폼 기능
- 이미지 표시 확인
- 메뉴 구조 확인
- 위젯 설정 확인
5-2. SEO 및 추가 설정
- Google Search Console 재등록
- Google Analytics 연동 확인
- 사이트맵 재생성 및 제출
- 301 리다이렉트 설정 (도메인 변경 시)
- SSL 인증서 설치 확인
문제 해결 가이드 (트러블슈팅)
자주 발생하는 문제와 해결책
1. “데이터베이스 연결 오류” 발생 시
원인: wp-config.php 설정 오류
해결방법:
// wp-config.php에서 다음 정보 재확인
define('DB_NAME', '정확한_데이터베이스명');
define('DB_USER', '정확한_사용자명');
define('DB_PASSWORD', '정확한_비밀번호');
define('DB_HOST', 'localhost'); // 또는 호스팅사에서 제공한 호스트명
2. 이미지가 표시되지 않는 경우
원인: URL 변경이 완전히 되지 않음
해결방법:
-- 추가 URL 변경 쿼리 실행
UPDATE wp_options SET option_value = REPLACE(option_value, '원본도메인', '신규도메인');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, '원본도메인', '신규도메인');
3. 관리자 페이지 무한 리다이렉트
원인: URL 설정 충돌
해결방법:
wp-config.php에 다음 코드 추가:
define('WP_HOME','https://신규도메인.com');
define('WP_SITEURL','https://신규도메인.com');
4. 플러그인 오류로 사이트 접속 불가
해결방법:
- FTP로
/wp-content/plugins/
폴더명을 임시로plugins_disabled
로 변경 - 사이트 접속 확인 후 문제 플러그인 찾기
- 하나씩 폴더명을 원래대로 변경하며 문제 플러그인 식별
5. “내부 서버 오류 (500 Error)” 발생 시
주요 원인 및 해결책:
- .htaccess 파일 문제: 파일을 임시로 삭제하고 테스트
- PHP 버전 호환성: 호스팅 제어판에서 PHP 버전 변경
- 메모리 부족: wp-config.php에
ini_set('memory_limit', '256M');
추가
긴급 복구 방법
사이트가 완전히 접속되지 않을 때:
-- 강제 URL 변경 (phpMyAdmin에서 실행)
UPDATE wp_options SET option_value = 'https://신규도메인.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://신규도메인.com' WHERE option_name = 'home';
-- 모든 플러그인 비활성화
UPDATE wp_options SET option_value = '' WHERE option_name = 'active_plugins';
최종 점검 및 마무리
성능 테스트
- 페이지 로딩 속도: GTmetrix에서 속도 테스트
- 모바일 친화성: Google Mobile-Friendly Test
- 보안 스캔: Sucuri SiteCheck으로 보안 점검
정기 유지보수 설정
- 자동 백업 플러그인 설정 (주간 백업 권장)
- 보안 플러그인 설정 및 정기 스캔
- 플러그인/테마 자동 업데이트 설정
모든 단계가 완료되면 워드프레스 홈페이지 이전이 성공적으로 완료됩니다. 문제가 발생할 경우 위의 트러블슈팅 가이드를 참조하여 해결하시기 바랍니다.