WordPress를 새 서버나 서버의 다른 위치로 옮길 시에 다시 설치할 필요가 없습니다. WordPress는 이러한 모든 상황을 처리할 수 있을 만큼 충분히 유연합니다.
목차
새로운 서버로 이전
한 서버에서 다른 서버로 WordPress를 이동하는 경우 먼저 WordPress 디렉토리, 이미지, 플러그인 및 사이트와 데이터베이스의 기타 파일을 백업하세요. WordPress 백업 및 데이터베이스 백업을 참조하세요.
도메인 이름 및 URLs 유지
WordPress 사이트의 홈 및 사이트 URL을 변경하지 않아도 도메인을 매우 간단하게 이동할 수 있습니다. 대부분의 경우 파일을 이동하여 수행할 수 있습니다.
- 데이터베이스와 URL이 동일하면 파일과 데이터베이스를 복사하여 이동할 수 있습니다.
- 데이터베이스 이름이나 사용자가 변경되면 올바른 값을 갖도록 wp-config.php를 편집하세요.
- 전환하기 전에 테스트하려면 데이터베이스 테이블 “wp_options”에서 “siteurl”과 “home”을 일시적으로 변경해야 합니다.(phpMyAdmin 또는 이와 유사한 것을 통해)
- 어떤 종류의 재작성(고유 링크) 설정이 있는 경우 .htaccess를 비활성화하고 영구 링크가 활성화될 때 재구성해야 합니다.
도메인 이름 및 URL 변경
웹사이트를 이동하고 도메인 이름 또는 URL을 변경하는 단계
(예: http://example.com/site에서 http://example.com으로, 또는 http://example.com에서 http://example.net으로)
- 기존 사이트 파일을 다운로드합니다.
- 데이터베이스 내보내기 – MySQL로 이동하여 데이터베이스를 내보냅니다.
- 백업된 파일과 데이터베이스를 안전한 위치의 새 폴더로 이동하세요. 이것이 사이트 백업입니다.
- 이동하려는 사이트에 로그인하여 “설정” > “일반”으로 이동한 후 URL을 변경하세요. (예: http://example.com/에서 http://example.net으로) – 설정을 저장하고 404 페이지가 표시될 것으로 예상합니다.
- 사이트 파일을 다시 다운로드하세요.
- 데이터베이스를 다시 내보냅니다.
- 새 서버의 MySQL 데이터베이스 이름, 사용자 및 암호로 wp-config.php를 편집합니다.
- 파일을 업로드합니다.
- 새 서버에서 데이터베이스를 가져옵니다.
도메인 이름이나 URL이 변경되면 추가 문제가 발생합니다. 파일 및 데이터베이스를 이동할 수 있지만 이전 도메인 이름 또는 위치에 대한 참조는 데이터베이스에 남아 있으므로 링크 또는 테마 표시에 문제가 발생할 수 있습니다.
전체 데이터베이스에서 검색 및 교체를 수행하여 URL을 변경하면 일부 테마 및 위젯이 표시된 URL 길이와 함께 값을 저장한다는 사실로 인해 데이터 직렬화에 문제가 발생할 수 있습니다. 이것이 바뀌면 상황이 깨집니다. 직렬화 문제를 방지하기 위해 세 가지 옵션이 있습니다.
- 대시보드에 액세스할 수 있는 경우 Velvet Blues Update URL 또는 Better Search Replace 플러그인을 사용하십시오.
- 호스팅 제공업체(또는 귀하)가 WP-CLI를 설치한 경우 WP-CLI의 검색 대체를 사용하십시오.
- WordPress 데이터베이스의 검색 및 바꾸기 스크립트를 사용하여 이전 도메인의 모든 인스턴스 또는 새 도메인의 경로를 안전하게 변경하십시오. (** 데이터베이스 관리에 익숙한 경우에만 이 옵션을 사용합니다 ** )
참고: wp_posts 테이블에서만 검색 및 바꾸기를 수행하십시오.
참고: Interconnectit에서 검색 및 바꾸기는 타사 스크립트입니다.
기존 서버에서 디렉토리 이동
서버의 한 위치에서 다른 위치로 WordPress 파일을 이동하는 경우(예: URL 변경)에는 특별한 주의가 필요합니다. WordPress를 자체 폴더로 옮기고 싶지만 도메인 루트에서 실행하게 하려면, 자세한 지침은 WordPress 자체 디렉토리 제공을 참조하세요.
다음은 WordPress 사이트를 동일한 서버의 새 위치로 이동하는 단계별 지침입니다.
- 다음 두 옵션 중 하나를 사용하여 새 위치를 만듭니다.
: WordPress 코어 파일을 새 디렉토리로 이동하려는 경우 새 디렉토리를 만드십시오. WordPress를 루트 디렉토리로 이동하기 전에 복사할 수 있는 모든 index.php, .htaccess 및 기타 파일이 백업되었는지 확인하십시오. up 및/또는 이동하고 루트 디렉터리가 새 WordPress 파일을 위한 준비가 되었는지 확인합니다. - 사이트에 로그인합니다.
- “관리” > “설정” > “일반 화면”으로 이동합니다.
- WordPress 주소(URL) 상자에서 주소를 기본 WordPress 코어 파일의 새 위치로 변경합니다.
- 사이트 주소(URL) 상자에서 주소를 새 위치로 변경합니다. 이 주소는 WordPress(공개 사이트) 주소와 일치해야 합니다.
- 변경 사항 저장을 클릭합니다.
- (지금 사이트를 열거나 보려고 하지 마십시오!)
- WordPress 코어 파일을 새 위치로 이동합니다. 여기에는 http://example.com/wordpress와 같은 원래 디렉토리에서 찾은 파일과 새 위치에 대한 모든 하위 디렉토리가 포함됩니다.
- 이제 yourdomain.com/wp-admin으로 이동하여 사이트를 열어보십시오. 참고: yourdomain.com/wp-login.php로 이동해야 할 수도 있습니다.
- 고유주소를 사용하는 경우 관리 > 설정 > 고유주소 패널로 이동하여 고유주소 구조를 .htaccess 파일로 업데이트합니다. 이 파일은 기본 index.php 파일과 동일한 디렉토리에 있어야 합니다.
- 기존 이미지/미디어 링크 업로드 미디어는 이전 폴더를 참조하며 새 위치로 업데이트해야 합니다. Better Search Replace 또는 Velvet Blues Update URLs 플러그인, 호스팅 제공업체(또는 귀하)가 WP-CLI를 설치한 경우 WP-CLI의 search-replace를 사용하거나 SQL 데이터베이스에 수동으로 또는 타사 데이터베이스 업데이트 도구(데이터베이스 검색 및 바꾸기 스크립트)를 사용하여 이 작업을 수행할 수 있습니다. * 참고: 이 스크립트는 숙련된 개발자가 가장 잘 사용합니다.
- 어떤 경우에는 ISP에 따라 권한이 변경되었을 수 있습니다. “0000” 권한이 있는 파일을 확인하고 “0644”로 다시 변경하십시오.
- 테마가 메뉴를 지원하는 경우 홈 페이지 링크에 여전히 이전 하위 디렉토리가 포함되어 있을 수 있습니다. “외모” > “메뉴”로 이동하여 업데이트하십시오.
- 때때로 서버를 다시 시작해야 합니다. 그렇지 않으면 서버에서 오류가 발생할 수 있습니다. (MAMP 소프트웨어(Mac)에서 발생).
파일을 이동하기 전에 URI 위치를 설정하는 것이 중요합니다.
위치 변경을 잊어버린 경우
URI를 변경하기 전에 실수로 파일을 이동한 경우 두 가지 옵션이 있습니다.
- 파일이 원래
/path/to/old/
에 있었고 URI를 변경하기 전에 파일을/path/to/new
로 이동했다고 가정합니다. 이 문제를 해결하는 방법은/path/to/old/
를/path/to/new/
에 대한 심볼릭 링크(Windows 사용자의 경우 “symlink”는 “바로 가기”와 동일)로 만드는 것입니다.ln -s /path/to/new /path/to/old
그런 다음 평소와 같이 위의 단계를 따르세요. 그런 다음 원하는 경우 심볼릭 링크를 삭제하십시오. - WordPress 주소와 블로그 주소를 변경하는 것을 잊은 경우 WordPress 인터페이스를 사용하여 변경할 수 없습니다. 그렇지만 데이터베이스에 대한 액세스 권한이 있는 경우 수정할 수 있습니다. 사이트의 데이터베이스로 이동하여
wp_options
테이블을 찾으십시오. 이 테이블은 인터페이스에서 설정할 수 있는 모든 옵션을 저장합니다. WordPress 주소 및 블로그 주소는siteurl
및home
(option_name 필드)으로 저장됩니다.option_value
필드를option_name='siteurl' 또는 option_name='home'
이 있는 레코드의 올바른 URL로 변경하기만 하면 됩니다.
참고: 때때로 WordPress 주소와 블로그 주소가 WordPress Transients에 저장됩니다. 검색 및 바꾸기 스크립트는 스크립트를 새 주소로 수정하는 데 문제가 있을 수 있습니다. 일부 플러그인은 이로 인해 이전 주소를 참조할 수 있습니다. 일시적인 값은 wp_options 데이터베이스 테이블에 저장된 임시(캐시된) 값으로, 제거 시 필요에 따라 다시 만들 수 있습니다. 따라서 마이그레이션된 데이터베이스 복사본에서 삭제하고 다시 생성하는 것이 안전합니다. 이 데이터베이스 쿼리(백업 필수!)는 모든 임시 항목을 지웁니다.
DELETE FROM `wp_options` WHERE option_name LIKE '%\_transient\_%'
실수로 WordPress 사이트 URL을 변경한 경우
파일을 이동할 수 없는 URI를 실수로 변경했다고 가정합니다(그러나 리디렉션 등을 통해 로그인 페이지에 계속 액세스할 수 있음).
wp-login.php를 사용하여 URI를 (재)설정할 수 있습니다. 이 줄을 찾으십시오.
require( dirname(__FILE__) . '/wp-load.php' );
아래에 다음 줄을 삽입하십시오.
//FIXME: do comment/remove these hack lines. (once the database is updated)
update_option('siteurl', 'http://your.domain.name/the/path' );
update_option('home', 'http://your.domain.name/the/path' );
완료되었습니다. 사이트가 제대로 작동하는지 테스트하십시오. 변경 사항에 사이트의 새 주소가 포함된 경우 사람들에게 새 주소를 알리고 .htaccess 파일에 리디렉션 지침을 추가하여 방문자를 새 위치로 안내하는 것이 좋습니다.
사이트 URL을 변경하면 이 프로세스에 대한 세부 정보도 제공됩니다.
이전 사이트 관리
종료
- OLD 사이트에서 하드 드라이브로 주요 워드프레스 파일 사본을 다운로드하고 새 서버에 맞게 wp-config.php를 편집하십시오.
- 이전 사이트로 돌아가서 관리 > 설정 > “일반” 화면으로 이동하여 URL(둘 모두)을 새 사이트의 URL로 변경합니다.
- 서버에 로그인하고 phpMyAdmin으로 이동하여 파일로 내보내고 데이터베이스를 저장합니다(그러나 만일을 대비하여 이전 데이터베이스를 유지). 이제 이 새 데이터베이스와 편집된 wp-config.php가 있는 wordpress 코어 파일의 복사본을 새 서버에 업로드합니다.
계속 실행
주의: 계속 진행하기 전에 이전 사이트의 WordPress 데이터베이스를 백업했는지 확인하세요!
파트 A – 새 사이트 활성화
- 전체 WordPress 설치를 하드 드라이브에 다운로드합니다. 폴더 이름을 적절하게 지정하여 이것이 OLD 사이트의 설치임을 나타내십시오.
- 데이터베이스를 다운로드합니다.
- 이전 사이트로 돌아가서 옵션으로 이동하여 URL(둘 모두)을 새 사이트의 URL로 변경하세요.
- 다시 말하지만, 전체 WordPress 설치를 하드 드라이브에 다운로드하세요. 새 사이트의 설치임을 나타내도록 폴더 이름을 적절하게 지정합니다.
- 데이터베이스를 다시 한 번 다운로드합니다(이전 데이터베이스는 유지). 이 데이터베이스를 새 서버에 업로드하세요. 동일한 데이터베이스 이름을 사용하고 새 서버에서 이전 서버와 동일한 로그인 자격 증명을 사용하여 사용자를 만드는 것이 가장 쉽습니다.
- 다른 데이터베이스 이름 및/또는 사용자를 사용한 경우(이전 단계 참조) 새 사이트의 설치 폴더에서 wp-config.php를 적절하게 편집하세요.
- 새 사이트의 설치 폴더를 새 사이트에 업로드합니다. 자, 이제 새 사이트가 작동해야 합니다!
파트 B – 이전 사이트 복원
- 원본 서버에서 OLD 사이트의 데이터베이스를 삭제합니다.(초기에 만든 복사본이 로컬 컴퓨터에 있어야 합니다)
- OLD 사이트의 설치 폴더를 원래 서버에 업로드하고 현재 있는 파일을 덮어씁니다(서버에서 설치 폴더를 삭제하고 단순히 OLD 사이트의 파일을 다시 업로드할 수도 있습니다).
- 로컬 컴퓨터에서 서버로 OLD 사이트의 데이터베이스를 업로드합니다.
게시물, 댓글, 페이지, 카테고리 및 사용자 정의 필드(게시물 상태, 데이터, 퍼머링크, 핑 상태 등)의 사본을 쉽게 만드는 또 다른 절차:
- 새 WordPress 사이트 설치
- 이전 사이트 관리자 패널로 이동합니다. 여기에서 관리 > 내보내기의 작성자 제한 메뉴에서 “모두”를 선택합니다.
- 내보내기 파일 다운로드를 클릭합니다.
- 새 사이트에서 관리 > 가져오기로 이동하여 WordPress 항목을 선택합니다.
- 표시될 페이지에서 방금 내보낸 파일을 선택합니다. 파일 업로드 및 가져오기를 클릭합니다.
- 페이지가 나타납니다. 작성자 지정에서 이미 존재하는 사용자에게 작성자를 지정하거나 새 사용자를 작성하십시오.
- 제출을 클릭하세요.
참고: 이 방법을 사용하면 새 사이트에 일부 기사(예: Hello World, 정보 페이지 등)가 있어도 지워지지 않습니다. 기사만 추가됩니다. 이전 절차를 사용하여 새 사이트의 기사가 삭제됩니다.
WordPress 멀티사이트 이동
데이터베이스 자체에 서버 이름과 폴더 위치에 대한 참조가 여러 개 있기 때문에 멀티사이트(다중사이트)는 이동하기가 다소 복잡합니다. 동일한 도메인 이름을 가진 새 서버로 단순히 이동하는 경우 기존 설치와 동일하게 파일과 데이터베이스를 복사할 수 있습니다.
대신 도메인을 변경하는 경우 Multisite를 이동하는 가장 좋은 방법은 파일을 이동하고 .htaccess 및 wp-config.php를 편집한 다음(Multisite가 포함된 폴더 이름이 변경된 경우) 수동으로 데이터베이스를 편집하는 것입니다. 도메인 이름의 모든 인스턴스를 검색하고 필요에 따라 변경합니다. 이 단계는 아직 쉽게 자동화할 수 없습니다. wp_x_posts 테이블을 검색/바꾸는 것이 안전하지만 WordPress 데이터베이스 검색 및 바꾸기 스크립트(interconnectit 스크립트라고도 함) 없이 일괄 검색/바꾸기를 시도하지 마십시오.
Multisite를 한 폴더에서 다른 폴더로 이동하는 경우 wp_blogs 항목을 편집하여 폴더 이름을 올바르게 변경해야 합니다. 모든 사이트가 올바르게 변경되었는지 확인하려면 wp_site 및 wp_blogs를 모두 수동으로 검토해야 합니다.
또한 모든 wp_x_options 테이블을 수동으로 검토하고 세 개의 필드를 찾아 필요에 따라 편집합니다.
- home
- siteurl
- fileupload_url
하위 도메인에서 하위 폴더로 또는 그 반대로 이동하는 경우 wp-config.php 파일에서 .htaccess 파일과 SUBDOMAIN_INSTALL 값을 적절하게 조정해야 합니다.
관련 링크
- How to move WordPress site to another server with zero downtime
다운타임 없이 WordPress 사이트를 다른 서버로 이동하는 방법 - Moving a blog from wordpress.com to self-hosted blog
wordpress.com에서 자체 호스팅 블로그로 블로그 이동 - Moving WordPress to a new domain or server
WordPress를 새 도메인 또는 서버로 이동 - Italian version of this article – Versione italiana dell’articolo
이 기사의 이탈리아어 버전 – Versione italiana dell’articolo - How to move a WordPress Blog or Website
WordPress 블로그 또는 웹사이트를 이동하는 방법 - Search and Replace for WordPress Databases
WordPress 데이터베이스 검색 및 바꾸기 - Online WordPress Serialized PHP Search and Replace
온라인 WordPress 직렬화 PHP 검색 및 바꾸기 - Cloning a live WordPress site to a local Mac test environment
라이브 WordPress 사이트를 로컬 Mac 테스트 환경에 복제 - PHP script to replace site url in WordPress database dump, even with WPML
WPML을 사용하는 경우에도 WordPress 데이터베이스 덤프의 사이트 URL을 대체하는 PHP 스크립트 - The Duplicator plugin helps administrators move a site from one location to another
관리자가 사이트를 한 위치에서 다른 위치로 이동하는 데 도움이 되는 Duplicator 플러그인 - Technical tutorial on moving your WordPress blog to Bitnami’s AWS configuration
WordPress 블로그를 Bitnami의 AWS 구성으로 이동하는 방법에 대한 기술 자습서