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

공정위 광고 문구 Ver 3.1
공정위 광고 문구 Ver 3.2(모바일 전용)

워드프레스 사이트를 직접 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

  • Clearfy Cache: 캐시 그 이상, 워드프레스 최적화에 중점을 둔 플러그인

    워드프레스 사이트의 속도가 느린 경우 캐시 플러그인 또는 최적화 플러그인을 고려할 수 있습니다. Clearfy Cache는 이름처럼 캐시 기능을 포함하고 있지만, 다른 캐시 플러그인과 비교하면 그 범위는 다소 제한적입니다. 따라서 Clearfy 는 최적화와 관리 보조 도구에 중점을 둔 플러그인으로 보는 것이 더 적절합니다. Clearfy는 기본적으로 간단한 캐싱 기능을 제공하지만, 자산 관리 기능을 통해 사용되지…

  • 워드프레스 테마: 4가지 용도와 기능 & 속도로 보는 추천 테마 선택 기준

    워드프레스 테마는 사이트의 겉모습만 바꾸는 것이 아니라 레이아웃과 속도, 쓸 수 있는 기능까지 함께 정합니다. 같은 콘텐츠라도 어떤 테마 위에 올리느냐에 따라 사이트가 다른 템플릿이 됩니다. 그래서 좋은 테마를 찾는 것보다 내 사이트에 맞는 테마를 찾는 쪽이 먼저입니다. 아래에서는 용도와 속도 두 축으로 후보를 좁히고, 무료와 유료의 차이를 확인한 뒤 마지막에 결정 전…

  • 워드프레스 테마 설치 및 활성화

    워드프레스 테마 설치 방법 및 활성화 방법입니다. 1. 워드프레스 테마 설치하기 워드프레스 관리자 페이지에 접속했다면 좌측 [외모] > [테마] 탭으로 이동합니다. 설치된 기본 테마가 활성화 되어 있습니다. 테마 메뉴 상단 [새로 추가] 버튼을 누르면 인기있는 테마 및 최근순 등의 테마를 확인할 수 있습니다. 테마 목록에서 테마 위에 마우스를 올려 놓으면 우측 하단 [설치]…

  • [WP] 워드프레스 관리자 페이지 설정(Settings)-일반, 쓰기, 읽기.. 7가지 설정

    워드프레스를 처음 설치하면 관리자 페이지 대시보드에 접속하게 됩니다. 워드프레스 관리자 페이지 설정 탭에서 기본 설정 방법에 대해 알아 보겠습니다. 설치 후 필수로 설정해야 할 요소는 워드프레스 페이지 주소(URL)와 사이트 설정 고유주소인 워드프레스 Permalink입니다. 1. 워드프레스 관리자 페이지 설정 탭 확인하기 [설정] 탭으로 접속하면 워드프레스 설치 후 가장 기본적인 설정 내용을 확인할 수 있습니다….

  • 워드프레스 Neve 테마 설치: 속도 테스트

    Neve 테마는 빠르고 가벼운 워드프레스 테마로, 초보자부터 고급 사용자까지 모두를 위한 유연한 구조를 제공합니다. 공식 테마 디렉토리에 등록된 무료 테마 중 하나로, 블록 에디터(Gutenberg)는 물론 Elementor, Brizy, Beaver Builder 등 다양한 페이지 빌더와도 높은 호환성을 자랑합니다. 특히, Neve는 모바일 퍼스트 구조와 AMP 지원, 최적화된 코드 덕분에 속도 측면에서도 매우 뛰어난 평가를 받고 있습니다….

  • [WP] Softaculous 사용 워드프레스 스테이징 사이트 만드는 방법

    워드프레스를 사용할 때 플러그인 설치 및 업데이트 등을 포함한 여러가지 변경 사항을 안전하게 테스트 하기 위한 사이트가 필요할 수 있습니다. ‘워드프레스 스테이징 사이트‘를 만든다면 안전한 테스트가 가능합니다. 1. 워드프레스 스테이징 사이트란? 스테이징 사이트Staging Site는 변경 사항을 라이브로 만들기 이전에 테스트 할 수 있는 라이브 웹 사이트의 복사본입니다. 스테이징 사이트에서 오류 체크 후 라이브…

답글 남기기

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

Prove your humanity: 2   +   7   =