라즈베리파이 - Wordpress 설치 및 세팅
이번에는 라즈베리파이 서버에 "wordpress" CMS를 설치해서 웹서비스를 진행하는 실습을 진행하도록 하겠습니다.
이전에 CMS관련 실습을 진행하면서 wordpress에 대해서 언급했던 적이 있습니다. wordpress는 전세계에서 가장 대표적인 CMS로서 LAMP또는 LEMP에서 동작합니다. 여기서 말하는 LAMP, LEMP의 의미는 다음과 같습니다.
- LAMP = Linux + Apache + MySQL + PHP
- LEMP(=LNMP) = Linux + Nginx + MariaDB + PHP
다음과 같이 CMS가 동작하는 환경에 대한 내용입니다. 현재 우리가 실습을 진행하는 환경은 LEMP에 해당하는 환경이므로 별다른 추가적인 세팅이 필요없이 wordpress를 설치하여 사용할 수 있습니다. 이전에 라즈베리파이서버에서 일반적인 CMS를 운영하기에는 다소 무겁다고 언급했었지만 그렇다고 불가능한 것은 아닙니다. 이번 실습에서는 wordpress를 기반으로 웹사이트를 구현하는 실습을 경험해보겠습니다.
우선 wordpress를 기반으로 웹서비스를 제공한 계정을 새로 생성해서 해당계정에 DB 관련 세팅까지 마친 후 wordpress를 설치하는 것으로 하겠습니다. 우선 라즈베리파이에 추가적으로 한 개의 계정을 더 생성하겠습니다. 해당 단계의 내용은 이전 실습들에서 모두 다룬 내용들이지만 관련 절차를 복습한다는 의미에서 계정을 생성하는 부분부터 차근차근 실습을 진행해나가도록 하겠습니다.
우선 pi 계정에 접속해서 root 권한을 획득합니다.
그리고 useradd와 passwd 명령어를 이용해서 user 정보를 추가합니다.
wp_hjy라는 계정을 새롭게 생성하였습니다. 이전에도 강조했지만 useradd 할때 꼭 -m 옵션을 추가해서 해당 계정에 대한 저장소가 할당될 수 있도록 해줘야 합니다. 이제 웹페이지를 서비스하기 위한 서버세팅파일을 생성해야 합니다. 지금까지 실습해 왔던 것처럼
/etc/nginx/sites-available 에 세팅파일을 만들고 /etc/nginx/sites-enabled 를 생성해야 합니다.
세팅파일의 내용을 다음과 같이 입력합니다.
server{
listen 80;
listen [::]:80;
server_name wp_juyoungit.com;
root /home/wp_hjy/html;
index index.html index.php;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
이제 다음으로 링크파일을 생성해줘야 합니다. /etc/nginx/sites-enabled 경로에 방금 만든 세팅파일의 링크를 만들어 주면 됩니다. sites-enabled에 세팅파일이 위치해야 정상적으로 nginx가 웹서비스를 진행할 수 있으며 세팅파일이 아닌 링크파일을 생성하는 이유는 서버관리자 측면에서 각 사이트에 대한 관리를 효율적으로 하기 위함입니다.
다음과 같이 링크파일을 생성하였다면 nginx의 세팅이 제대로 이루어졌는 지 확인해야 합니다. 이전단계에서 만든 세팅파일이 문법적인 오류를 포함하고 있거나 링크파일에 대한 경로가 잘못지정된 경우 nginx -t 명령을 통해서 확인할 수 있으므로 필수적으로 거치는 과정입니다.
그리고 마지막으로 nginx를 재시작 해주면 됩니다.
이제 nignx가 웹서비스를 정상적으로 제공하는 지 확인하기 위해서 생성한 도메인에 대한 document root에 index.html 파일 추가 후 웹브라우져를 이용하여 해당페이지에 접속해보도록 하겠습니다. 이전에 우선 웹서비스를 제공하는 라즈베리파이 서버 사용자 계정에 접속합니다.
이전단계에서 만든 세팅파일에서 지정한 document root 의 경로를 맟춰주기 위해 html directory를 생성합니다.
그리고 그 안에 index.html 파일을 생성합니다.
다음과 같이 정상적으로 저장된 것을 확인했다면 테스트를 위한 준비를 마쳤습니다.
현재 실습에서 사용하는 라즈베리파이에 세팅하는 웹서버는 가상호스트로서 정식으로 할당받은 도메인이 아닙니다. 그렇기 때문에 DNS에는 우리가 생성한 도메인에 대한 정보가 없으며 이를 이용하기 위해서 사용자는 local PC의 host파일에 사용할 도메인 명과 ip주소를 등록해줘야 합니다.
hosts 파일에 도메인 명과 IP 주소를 등록한 후 웹브라우져로 이동해서 해당 주소로 접속해보면 index.html 파일의 내용이 정상적으로 나타나는 것을 확인할 수 있습니다.
이제 이로서 nignx가 정상적으로 세팅이 완료되어 웹서비스를 제공할 수 있는 상태가 되었음을 확인하였습니다. 이제 CMS(wordpress)를 다운로드 및 설치해서 웹페이지를 생성하도록 하겠습니다.
이제 웹서비스를 수행하는 라즈베리파이 서버의 사용자 계정으로 접속합니다.
그리고 설치파일을 다운로드해서 압축을 해제해야 합니다. 다운로드하는 위치는 document root directory 입니다. 설치파일 다운로드는 이전 실습에서도 다루었던 wget 명령어를 다음과 같이 활용해서 진행합니다.
현재 wget을 이용해서 다운로드한 설치파일은 압축되어 있는 압축파일입니다. 그래서 설치를 위해서는 해당파일의 압축을 해제해줘야 합니다. 명령어는 다음과 같이 사용합니다.
tar -xzvf latest-ko_KR.tar.gz |
이제 서버관리자의 역할입니다. 이제 웹서비스에 사용할 사용자용 DB를 생성해야 합니다. 라즈베리파이 시스템 root와 mairadb의 root는 완전히 다른 root 이므로 비밀번호만 알고 있다면 라즈베리파이서버 사용자 계정에서도 DB root로 접속하는 것이 가능하지만 일반 사용자가 DB root에 접근하는 일은 사실상 거의 없기 때문에 제대로된 실습을 위해서 시스템 관리자 계정인 pi 계정으로 재접속 후 DB root로 접속하도록 하겠습니다.
이전 DB 세팅 실습에서 공부했듯이 사용자용 DB 생성에 필요한 3가지 정보
- DB 이름
- DB 접근 사용자 이름
- 비밀번호
를 차례대로 생성해줍니다.
이제 사용자용 DB 생성을 마쳤습니다. 이제 웹브라우져에서 설치페이지로 이동해서 wordpress 설치과정을 진행해야 합니다.
다음과 같은 형식으로 웹브라우져에 주소를 입력하고 들어가면 다음과 같은 창이 나타납니다.
다음으로 진행하게 되면 이렇게 DB 연결정보를 입력하는 페이지가 나타납니다. 이곳에 이전단계에서 생성한 사용자용DB 정보를 순서대로 입력해주면 됩니다.
정상적으로 DB 연결정보를 입력했다면 다음과 같이 wp-config.php 파일을 생성해주어야 합니다. 페이지에서 출력되는 내용을 복사하고 그대로 붙여넣기 해서 파일만 만들어주면 됩니다.
wp-config.php 파일을 생성했다면 설치페이지에서 "설치 진행하기"를 클릭해주면 됩니다.
위와 같이 페이지 생성을 위한 관련 정보들을 입력해주면 세팅과정이 마무리 됩니다.
설치를 마쳤다면 이제 로그인해서 페이지로 이동하면 됩니다.
이제 이전 batflat CMS을 이용해서 진행했던 실습처럼 자신이 원하는 대로 페이지를 구성할 수 있습니다. 이것으로 wordpress 설치관련 실습을 마쳤습니다. 다음글에서는 wordpress 테마를 적용하고 사용자화 하는 것에 대한 내용을 다뤄보도록 하겠습니다. 감사합니다.
'Web Basic > Raspberry PI' 카테고리의 다른 글
라즈베리파이 - Wordpress Theme 설정 및 사용자화 (0) | 2021.02.03 |
---|---|
Server Backup (0) | 2021.02.03 |
System Administration & mariadb setup (0) | 2021.02.02 |
라즈베리파이 - Batflat의 관리자 페이지 사용법 (0) | 2021.02.01 |
라즈베리파이 - CMS를 이용한 블로그 페이지 세팅 (0) | 2021.01.31 |
댓글
이 글 공유하기
다른 글
-
라즈베리파이 - Wordpress Theme 설정 및 사용자화
라즈베리파이 - Wordpress Theme 설정 및 사용자화
2021.02.03 -
Server Backup
Server Backup
2021.02.03 -
System Administration & mariadb setup
System Administration & mariadb setup
2021.02.02 -
라즈베리파이 - Batflat의 관리자 페이지 사용법
라즈베리파이 - Batflat의 관리자 페이지 사용법
2021.02.01