워드프레스 서버 이전하기: WordPress Migration 작업

워드프레스 사이트를 직접 AWS LightSail에서 관리하기 위해 워드프레스 서버 이전 작업을 진행하게 되었습니다.

서버 이전을 진행하게 된 이유는

  • 워드프레스 서버 이전 이유
  • 리눅스 서버에서 원하는 캐시 사용, 한국 위치 기반 웹사이트 속도 향상
  • 한국 서버 이용으로 속도와 위치 기반 SEO 향상
  • 서버 직접 관리를 통한 비용 절감
  • 원하는 대로 서버 커스터마이징

위와 같은 이유 외 다양한 이유로 서버 이전을 결정하게 되었습니다.

1. 워드프레스 서버 이전을 위한 기존 서버 SSH 접속

먼저 이용하는 호스팅 업체의 SSH 접속을 통해 DB 계정과 비밀번호 및 데이터 백업을 진행합니다.

사용하는 호스팅 업체의 관리자 페이지에서 데이터 및 DB 백업 파일을 만들 수 있지만 본인이 이용하는 호스팅 업체에서 백업 파일 생성 및 다운로드는 누구나 쉽게 할 수 있기 때문에 주로 SSH 접속 후 작업하는 방향으로 작성된 내용임을 참고하여 주시기 바랍니다.

1.1 데이터 백업

워드프레스 데이터가 들어 있는 루트 폴더(보통 www 또는 html)의 .tgz 확장자로 백업을 진행합니다.

~]$ tar cfzp 파일명.tgz  www/
~]$ ll 파일명.tgz
-rw-rw-r--  1 suxxxx suxxxx 125 Jul 24 11:01 파일명.tgz

1.2 wp-config.php 파일 관리자 정보 확인 및 DB 백업

관리자 페이지에서 DB 계정과 비밀번호를 확인할 수 있겠지만 직접 확인하는 방향으로 진행합니다. 루트 폴더의 wp-config.php 파일을 열어보면 DB 정보를 확인할 수 있습니다.

▼ DB 계정 및 비밀번호 xxxx 표시 필요.

~]$ vi www/wp-config.php

// ** Database settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'su1ktvw_fiun' );

/** Database username */
define( 'DB_USER', 'su1ktvw_fiun' );

/** Database password */
define( 'DB_PASSWORD', '@]pU4u9QS3' );

/** Database hostname */
define( 'DB_HOST', 'localhost' );

/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8mb4' );

/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );
:q!

~]$ mariadbdump -u(DB아이디) -p (DB네임) > 저장 할 파일명.sql

정보를 확인했으니 mysqldump 명령어로 파일을 저장합니다. db 아이디와 db 네임은 보통 동일하게 설정하며 다를 경우 이용 중인 호스팅 업체에 확인합니다. 보통 DB 권한을 다 부여 받지 못해 본인이 직접 루트 권한으로 접속 가능한 서버에서 사용하면 되겠습니다. sql 확장자의 파일을 관리자 페이지에서 다운로드 받습니다.

2. 이전할 서버: root 권한을 가진 서버 접속(Ex: AWS LightSail)

호스팅 계정 생성 및 DB 계정을 생성해 줍니다.

2.1 호스팅 계정 생성 및 백업 파일 복원

useradd 명령어를 사용합니다. 아파치 그룹 설정을 nobody로 설정해서 그룹을 nobody로 설정 후 진행했습니다.

~]# useradd 호스트계정 -g nobody
~]# passwd  호스트계정 # 비밀번호 설정
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
~]# cd /home/호스팅계정/
~]# chmod 701 ./ # 퍼미션 700을 701로 설정
~]# tar xzfp 파일명.tgz # 압축 풀기
~]# chown -R 호스팅계정.nobody www/ # 유저 및 그룹 권한을 다시 재설정

2.2 DB 계정 생성

## DB 관리자 접속 ## 
]# mariadb -u root -p 
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 2860
Server version: 11.3.2-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use mysql;
MariaDB [mysql]>  GRANT ALL PRIVILEGES ON 데이터베이스명.테이블명 TO 사용자@'호스트' IDENTIFIED by '생성할 DB 패스워드';
MariaDB [mysql]>  FLUSH PRIVILEGES;

2.2.1 DB 백업 파일 복원

]# mariadb  -utozisin -p tozisin < softsql.sql
mariadb -u(DB아이디) -p (DB네임) < 저장  파일명.sql

2.3 DB 이름 및 패스워드 변경하기

DB 이름 및 DB 유저 그리고 패스워드가 기존 서버와 다른 경우 변경을 해 줍니다. ①wp-config.php 파일에서 정보 수정, ②phpMyAdmin 또는 HeidSQL 등의 프로그램을 이용해서 DB에 접속 해 줍니다.

3. 에러 메시지 확인: There has been a critical error on this website.

[Learn more about troubleshooting WordPress.] 라는 에러 메시지가 확인되어 .htaccess 파일을 기본 Default로 변경했지만 발생된 에러가 해결되지 않아

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

wp-config.php에서 ‘WP_DEBUG’ 파일 false 값을 true로 변경 후 상태를 확인 해 봤습니다.

사용하는 해외 호스팅 업체의 플러그인이 문제인 것으로 파악되어,

워드프레스 서버 이전 작업 중 에러

원본에 없던 ‘object-cache.php’ 파일 삭제를 진행했습니다.

/home/tozisin/www/wp-content/object-cache.php

이후 메시지는 해당 경로의 ‘cdn-cache-admin.php’ 파일 삭제를 진행했습니다.

There has been a critical error on this website 이후 cdn 캐시 파일

동일한 오류가 발생하여 괸련 된 파일들을 추가로 삭제 했습니다.

~]# rm -f cdn-cache-management.php
~]# rm -rf cdn-cache-management/

4. 사진 엑박 문제

글에 올라온 사진이 엑박 문제가 확인되어..(웹사이트에서는 문제 없지만 관리자 페이지의 글 수정을 눌렀을 때) ssl을 설치해서 해결 되었습니다.

✅ WordPress Migration 작업 완료

정상적으로 워드프레스 서버 이전 작업(WordPress Migration)이 완료되어 사이트가 정상적으로 뜨는 것을 확인했습니다. 관리자 페이지에 들어가서 제 서버에서는 사용하지 않는 ‘Redis Object Cache‘ 플러그인은 삭제를 진행했습니다.

Similar Posts

  • [WP]워드프레스 댓글 비활성화 방법 3가지

    워프프레스 블로그를 운영하다 보면 해외에서 많은 스팸 댓글이 달릴 때가 많습니다. 댓글을 스팸 및 삭제하기 전에 달린 댓글들은 DB 용량을 차지해서 서버의 리소스를 잡아 먹습니다. 커뮤니티 or 전자상거래 목적의사이트가 아니라면 ‘워드프레스 댓글 비활성화’를 설정을 해 놓는 것이 옳은 결정입니다. 목차1. 워드프레스 서버 이전을 위한 기존 서버 SSH 접속1.1 데이터 백업1.2 wp-config.php 파일 관리자…

  • 워드프레스 RSS 피드 개수 설정 및 피드 주소 확인

    워드프레스에서 RSS 피드 설정과 주소 확인 방법에 대해 알아 보겠습니다. 워드프레스의 기본 RSS 피드 개수는 10개로 설정되어 있으며 늘리거나 줄일 수 있습니다. 먼저 워드프레스 RSS 피드 개수 설정 방법입니다. 목차1. 워드프레스 서버 이전을 위한 기존 서버 SSH 접속1.1 데이터 백업1.2 wp-config.php 파일 관리자 정보 확인 및 DB 백업2. 이전할 서버: root 권한을 가진…

  • [WP] 워드프레스 미디어 개요 및 5가지 주요 기능

    워드프레스 미디어 라이브러리는 이미지(JPEG, PNG 등), 비디오, 오디오 및 문서(PDF,Word 등 파일로 구성되며 한 곳에서 관리할 수 있습니다. 미디어 라이브러리에서 미디어 업로드와 필요하지 않은 관련 파일의 삭제 및 편집을 할 수 있습니다. 목차1. 워드프레스 서버 이전을 위한 기존 서버 SSH 접속1.1 데이터 백업1.2 wp-config.php 파일 관리자 정보 확인 및 DB 백업2. 이전할 서버:…

  • [WP] 워드프레스 렌더링 차단 리소스 제거 방법 2가지

    워드프레스를 이용하다 보면 ‘렌더링 차단 리소스 제거‘ 설정이란 내용을 플러그인 사용 중 본 경우가 있을 수 있습니다. 워드프레스 렌더링이란 무엇이며, ‘렌더링‘과 ‘렌더링 차단 리소스 제거‘는 무엇을 뜻 하는지 풀어 보도록 하겠습니다. 먼저 렌더링은 HTML, CSS, 자바스크립트 등 웹 사이트의 문서가 웹 브라우저에서 출력 되는 과정입니다. 웹 페이지에 접속 했을 때 브라우저에 표시되는 것이…

  • [WP] 2023년 빠른 워드프레스 테마 5개

    워드프레스 사이트를 운영 중인데 구글 페이지 스피드 및 지티메트릭스와 같은 사이트에서 원하는 속도가 나오지 않아 테마를 바꿀 것을 고려할 수 있습니다. 가볍고 빠른 2023년 빠른 워드프레스 테마는 무엇이 있을까요? 많은 워드프레스 테마의 총 페이지 크기가 300kb 이상인 경우가 많습니다. 워드프레스가 느리다는 인식이 몇 년 전까지 일반적이었지만 빠른 워드프레스 테마가 새로 나오고 지속적인 기존…

  • 워드프레스 호스팅 FastComet 성능 평가(Extra Plan $4.99)

    3년 전에 FastComet 호스팅을 일본 서버에서 1년 넘게 사용한 적이 있었기 때문에 이번에 여러가지 용도로 사용할 워드프레스 사이트를 추가하면서 신규 신청을 하게 되었습니다. 신청한 상품은 FastComet Extra 상품으로 신청 후 PHP 8.3에서 8.4로 업데이트 등 워드프레스 사이트 성능을 올리기 위한 작업을 모두 진행했습니다. 테스트는 워드프레스 최적화 플러그인 Perfmatters와 캐시 플러그인 WP Rocket 설치…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 10   +   1   =