이번 글에서는 무료서버에 워드프레스 설치를 하는 과정 중 MySQL DB 설정 방법에 대해서 알아보도록 하겠습니다.
무료서버에 워드프레스 설치
본 글은 오라클 클라우드를 이용하여 무료 서버를 구축하고자 하시는 분들을 위해서 연재되고 있습니다. 글의 순서는 다음과 같습니다.
무료서버에 워드프레스 설치 – nginx, MariaDB 설치
무료서버에 워드프레스 설치 – PHPMyAdmin 설치하는 2가지 방법
무료서버에 워드프레스 설치 – MySQL DB 설정 및 워드프레스 설치
mariaDB(MySQL) 설정하기
본문에서는 앞서 설치한 phpMyAdmin에 접속하여 데이터베이스를 구성하는 방법에 대해서 설명합니다.
phpMyAdmin에 접속하신 후 왼쪽 메뉴에서 [새로운]을 클릭한 뒤 데이터베이스명을 입력하고(임의로 작성가능합니다) 오른쪽에 [만들기] 버튼을 클릭합니다.
[phpMyAdmin] 로고를 클릭하여 메인 화면으로 이동한 뒤 상단의 메뉴 중 [사용자 계정]을 클릭합니다. 화면이 바뀌면 화면 중간에 [사용자 추가] 버튼을 클릭합니다.
위와 같이 로그인정보를 입력합니다. 사용자명과 암호는 각자에 맞춰서 사용합니다. 외부에서 접속할 수 없도록 호스트명을 localhost로 변경합니다. 화면 제일 하단에 [실행] 버튼을 클릭하여 사용자를 추가합니다.
이후 이동한 화면에서 [데이터베이스]를 클릭합니다.
앞서 생성한 데이터베이스를 클릭한 뒤 [실행] 버튼을 클릭합니다.
모두 체크를 클릭한 뒤 화면 하단에 [실행] 버튼을 클릭합니다.
업데이트 완료되면 화면 상단에 완료 안내 메시지가 표시됩니다.
워드프레스 설치
워드프레스 다운로드
클라우드 서버에 워드프레스를 설치하기 위해서는 워드프레스를 먼저 다운로드 받아야 합니다. 먼저 워드프레스 압축을 풀 경로로 이동하여 워드프레스를 다운로드 받도록 하겠습니다.
cd /usr/share/nginx/html sudo wget https://wordpress.org/latest.tar.gz
latest.tar.gz라는 이름으로 다운로드가 완료되었습니다. 다운로드한 파일 내부에서 wordpress 폴더가 최상단에 있습니다. 압축을 풀어 wordpress 폴더가 html 폴더 바로 아래에 위치하도록 하겠습니다.
sudo tar zxvf latest.tar.gz -C /usr/share/nginx/html/ sudo chown -R root:root /usr/share/nginx/html/wordpress
wordpress 폴더가 적절한 위치에 압축해제 되었습니다.
nginx 설정하기
다음으로 nginx 설정을 해보도록 하겠습니다. 이 과정을 진행하기 전에 호스팅을 위한 도메인을 구매하였다는 가정하에 진행하겠습니다. 도메인은 호스팅케이알이나 namecheap등을 이용하여 구매하실 수 있습니다. 무료로 도메인을 구할 수 있는 방법도 있으나 서비스 품질이나 안정성 때문에 가급적 구매하시는 것을 추천드립니다. 저는 infomatica.xyz라는 도메인을 구매하였고 이를 기준으로 설명하겠습니다.
default.conf 파일이 있는 위치로 이동한 뒤 nano 에디터를 이용하여 파일을 열도록 하겠습니다.
cd /etc/nginx/conf.d sudo nano default.conf
다음의 내용을 파일의 앞부분에 추가합니다.
server { server_name infomatica.xyz; root /usr/share/nginx/html/wordpress; index index.php index.html index.htm; access_log /var/log/nginx/infomatica.xyz.access.log main; error_log /var/log/nginx/infomatica.xyz.error.log notice; try_files $uri $uri/ /index.php; charset utf-8; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ \.php$ { fastcgi_pass unix:/run/php/php-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; proxy_redirect off; fastcgi_intercept_errors on; fastcgi_read_timeout 120; fastcgi_send_timeout 120; proxy_send_timeout 120; proxy_read_timeout 120; proxy_connect_timeout 120; } location ~ /\.ht { deny all; } location = /xmlrpc.php { deny all; } } ##### HTTPS 설정 내역 끝 #####
nginx를 재시작합니다.
sudo systemctl reload nginx
이제 주소입력창에 자신이 구매한 도메인 주소를 입력하면 워드프레스 설치 화면으로 이동하게 됩니다.
언어를 한국어를 선택한 뒤 [계속]을 클릭합니다.
[시작합니다!]를 클릭합니다.
앞서 MySQL 데이터베이스 생성 시 설정하였던 정보를 입력합니다. [제출] 버튼을 클릭합니다.
다음과 같은 에러가 발생하였습니다. 내용은 wp-config.php파일을 생성할 수 없다는 내용입니다. wordpress가 설치된 폴더의 권한을 조정하여 해결할 수 있는 문제이지만 여기에서는 직접 해당 파일을 만들어서 해결해 보겠습니다. 화면의 내용을 복사합니다.
sudo nano /usr/share/nginx/html/wordpress/wp-config.php
위 명령어를 입력하면 빈 파일이 생성됩니다. 파일안에 앞에서 복사 내용을 붙여넣기 한 뒤 저장하고 닫습니다. 그리고 다시 화면으로 돌아와서 [Run the installation] 버튼을 클릭합니다.
정상적으로 설치가 진행되고 몇가지 정보를 추가로 입력한 뒤 [Install WordPress]를 클릭합니다. Username과 Password는 앞으로 워드프레스에 접속할 때 사용하는 정보이므로 신중하게 작성합니다.
드디어 워드프레스 설치가 완료되었습니다!
에러발생
위 단계 이후에 다음과 같은 오류가 발생하면서 워드프레스 설치가 안되는 경우가 있습니다.
sorry, the page you are looking for is currently unavailable. please try again later.
에러를 확인하기 위해서 에러로그가 있는 페이지로 가서 에러를 확인해보겠습니다. 에러가 기록되는 경로는 다음과 같습니다.
cd /var/log/nginx
각자 설정한 파일명에 따라서 다르겠으나 저의 경우는 localhost.error.log라는 이름으로 에러로그가 저장되어 있습니다. 파일을 확인해 보겠습니다.
nano localhost.error.log
제 에러의 문제는 blowfish_secret.inc.php 파일 읽기를 계속 실패해서 생기는 문제였습니다. 해당 파일이 있는 위치로 이동한 뒤 파일의 소유자 및 권한을 변경하도록 하겠습니다.
cd /var/lib/phpmyadmin sudo chown root:root blowfish_secret.inc.php sudo chmod 777 blowfish_secret.inc.php sudo chown root:root tmp sudo chmod 777 tmp
다음 단계로 워드프레스에서 서브도메인을 설정하는 방법에 대해서 알아보도록 하겠습니다.