Vultr에서 여러 개의 워드프레스 사이트 운영하기

Posted by

Vultr 워드프레스용 호스팅에서 워드프레스 사이트를 추가 설치하는 방법을 소개하고자 합니다. Vultr에서 워드프레스용 호스팅을 신청하면 Ubuntu 20.04에 워드프레스가 설치된 상태로 서버가 생성됩니다.

그런데 여기에 워드프레스 사이트를 추가로 운영하고 싶다면 어떻게 해야 할까요? 클라우드웨이즈 같은 경우에는 서버에 application을 추가하는 방식으로 워드프레스 사이트를 늘려갈 수 있습니다. 그러나 vultr에서는 이 과정을 직접해야 합니다. (제가 아무리 찾아봐도 워드프레스 app을 vultr 사이트에서 쉽게 추가할 수 있는 방법은 없는 것 같네요. 혹시 아시는 분 있으면 댓글 부탁드립니다.)

서버에 직접 WordPress 사이트를 추가하는 작업이 쉽지는 않습니다만, 아래 설명을 차근차근 따라하시면 되겠습니다.

서버 환경 및 요구사항

  • Linux OS는 Ubuntu 20.04이며, 웹서버는 Nginx 기준입니다.
  • 서브도메인이 필요합니다.
  • Web Console 접속 또는 PuTTY 등을 통해 SSH 연결 후, root로 로그인을 했다고 가정합니다.

1. 워드프레스 다운로드 및 설치

  1. 새 워드프레스가 설치될 디렉토리를 생성합니다. Vultr에서 서버를 생성하면서 함께 만들어진 기본 워드프레스는 /var/www/html에 들어있습니다. (※ blog.example.com은 예시입니다)
    $ mkdir /var/www/blog.example.com
  2. 최신 워드프레스 압축파일을 다운로드한 후, 압축을 풉니다.
    – 다운로드: $ wget http://wordpress.org/latest.tar.gz
    – 압축풀기: $ tar -xzf latest.tar.gz
  3. 압축 해제가 끝나면 wordpress 폴더가 생깁니다. wordpress 폴더 내 파일들을 새 워드프레스 디렉토리에 옮깁니다.
    $ mv wordpress/* /var/www/blog.example.com
  4. nginx에 디렉터리에 대한 읽기 및 쓰기 권한을 부여합니다. 해당 작업을 하지 않으면 설정에서 언어 변경이 안되는 등의 문제가 생깁니다.
    $ chown -R www-data:www-data /var/www/blog.example.com
  5. 권한이 잘 변경되었는지 확인해 봅니다.
    $ ls -al /var/www

2. 워드프레스 데이터베이스 셋업

1) PHPMyAdmin 로그인

  1. 웹브라우저창을 새로 열고 http://[내 아이피]/mysqladmin/으로 접속합니다.
  2. 처음 접속하면 로그인창이 뜹니다. vultr 사이트에 접속하여 해당 서버를 클릭하면 Application Information – Install 설명에 PHPMyAdmin User와 Auth Password 정보가 있습니다. 이 값을 복사하여 로그인 창에 붙여 넣습니다.
  3. 이제 진짜 PHPMyAdmin 로그인창이 뜹니다. 사용자 권한을 추가하기 위해 root로 로그인을 합니다. root의 비밀번호는 ~/.my.cnf 파일에서 확인할 수 있습니다.

  4. 로그인이 완료되면 아래와 같은 화면이 뜹니다. 빨간 박스로 표시된 데이터베이스 버튼을 눌러서 새 DB를 추가해보도록 하겠습니다.

2) 데이터베이스 추가

  1. 새 데이터베이스를 추가합니다. 저는 DB이름을 서브도메인으로 넣었는데, 적당한 이름을 넣어주시면 됩니다. 데이터 정렬방식(collation)은 utf8mb4_unicode_ci를 권장합니다. 이모지 같은 글자는 4바이트를 필요로 하기 때문에, utf8_general_ci 등을 사용한다면 글자가 깨집니다. 포스팅 내용 및 댓글 내용이 DB에 저장되므로 이모지 글자를 지원하는 것이 좋겠죠.

3) 사용자 권한 추가

  1. 권한 탭을 클릭하고, 화면 하단에 있는 사용자 추가 링크를 클릭합니다.
  2. 사용자 계정을 생성합니다. 아래 이미지에서 빨간색 박스로 표시된 부분을 참고하여 진행하시면 되겠습니다.
    ①먼저 사용자명을 입력하고, ②호스트명은 ‘로컬’을 선택합니다. 이어서 ③암호 생성 버튼을 누르면 자동으로 계정의 암호를 만들어 줍니다. 생성된 암호는 다음 단계에서 사용할 예정이니 메모장에 따로 복사해 두시기 바랍니다.
    ④권한은 모두 체크를 선택하시고, 마지막으로 ⑤실행 버튼을 누르면 됩니다.
  3. 사용자 계정 추가가 완료되면 아래와 같은 화면이 뜹니다.

3. 워드프레스 설정

wp-config.php 파일 내용을 수정하여 워드프레스 설정 변경을 진행합니다.

  1. 첫번째 단계에서 셋팅한 워드프레스 설치 폴더로 이동합니다.
    $ cd /var/www/blog.example.com
  2. 에디터 프로그램(nano, vim 등)으로 wp-config.php파일을 엽니다.
    $ vim wp-config.php

1) 데이터베이스 설정

  1. 데이터베이스 설정 관련 내용을 수정합니다. DB_NAME은 이전 단계에서 새로 추가한 데이터베이스 이름, DB_USER는 새로 생성한 사용자명, DB_PASSWORD는 메모장에 복사해 둔 암호를 복사하여 붙여 넣습니다.

2) Authentication unique key와 salt 추가

  1. 아래 빨간박스로 표시된 define 부분을 삭제합니다(제 파일 기준으로 line 51~58에 해당합니다). 다음 단계에서 secret-key 서비스 사이트에 접속하여 새로 붙여 넣을 예정입니다.
    vim 에디터 기준으로 삭제 방법을 설명드리면, ESC를 눌러 명령모드로 전환한 뒤 해당 라인으로 커서를 이동합니다. 그리고 dd를 눌러서 한 줄씩 삭제하거나 d8을 눌러 한꺼번에 8줄을 삭제합니다.
  2. 44번째 줄에 있는 워드프레스 secret-key 서비스 주소를 복사합니다. 그리고 웹브라우저 창을 새로 열어 붙여넣기 합니다.
  3. 아래 내용을 복사한 다음, 아까 삭제한 곳에 붙여넣기를 합니다. vim 기준으로 명령모드에서 p를 누르면 붙여넣기가 됩니다.
  4. 변경 내용을 저장하고 wp-config.php 파일 편집을 종료합니다.

4. nginx – 서버 configuration 추가

nginx에 서버 구성 정보를 추가하면 콘솔에서의 작업은 끝납니다.

  1. /etc/nginx/conf.d 폴더로 이동합니다.
    $ cd /etc/nginx/conf.d
  2. wordpress_http.conf 파일을 복사하여 파일을 새로 만듭니다.
    $ cp wordpress_http.conf blog.example.com.conf
  3. 새로 만든 파일을 에디터(vim, nano 등)로 엽니다.
  4. upstream php- 로 시작하는 블록을 삭제합니다.
  5. 아래 이미지를 참고하여 서버 블록 정보를 수정합니다.
    – default_server 삭제합니다.
    – server_name에 서브도메인을 넣습니다.
    – root 오른쪽에는 워드프레스 설치 위치로 수정합니다.
  6. 변경사항을 저장하고 에디터를 종료합니다.
  7. nginx를 재시작합니다.
    $ sudo systemctl restart nginx

5. 워드프레스 접속하기

서브도메인으로 워드프레스에 접속해 봅니다. 정상적으로 설치가 되었다면 아래와 같이 로그인 창이 뜨게 됩니다. 사용자 이름과 비밀번호는 Vultr에서 내 서버 정보에 들어가면 Application Information – Install 안내가 되어 있고, WordPress Server Details 부분에 적혀 있습니다.

워드프레스 사이트에 대한 타이틀, 사용자명, 비밀번호, 이메일 등의 정보를 입력하고 Install WordPress 버튼을 누르면 워드프레스 설치가 끝납니다.

Leave a Reply

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