article thumbnail image
Published 2022. 9. 6. 15:17

lighttpd, MariaDB, PHP를 사용해 WordPress 구축하기

 

1. Lighttpd

1.1. Lighttpd이란?

youtube, wikipedia 등이 사용하는 오픈소스 경량 웹서버

 

1.2. Lighttpd 설치 및 적용

#lighttpd 설치
sudo apt-get install lighttpd


#서버 중지, 시작, 부팅시 활성화 명령어
sudo systemctl stop lighttpd.service
sudo systemctl start lighttpd.service
sudo systemctl enable lighttpd.service

 

php: 대표적인 서버 측에서 실행되는 서버 사이드 스크립트 언어

#php 설치
sudo apt-get install php7.4-fpm

#php.ini 파일 수정
vi /etc/php/7.4/fpm/php.ini

#이 부분 주석 해제
cgi.fix_pathinfo=1

 

CGI(Common Gateway Interface) : 웹서버와 외부 프로그램을 연결해주는 표준화된 프로토콜

FastCGI : 하나의 요청에 하나의 프로세스를 생성하는 cgi와 달리, 하나의 프로세스로 요청들을 처리

#fastcgi 파일 편집
vi /etc/lighttpd/conf-available/15-fastcgi-php.conf

#"bin-path"와 "socket"이 있는 행 주석처리 후 밑에 추가
"socket" => "/var/run/php/php7.4-fpm.sock",

 

#lighttpd 재시작
sudo lighttpd-enalbe-mod fastcgi
sudo lighttpd-enable-mod fastcgi-php
service lighttpd force-reload

#light 설정 확인
vi /etc/lighttpd/lighttpd.conf

설정을 확인해보면 80번 포트를 사용하기에 80번 포트를 추가로 허용

ufw allow 80

 

#info.php 생성
vi /var/www/html/info.php

#아래 코드 입력
<?php
	phpinfo();
?>

 

가상 머신의 설정에서 호스트 ip의 8080 포트를 가상 환경의 80번 포트에 연결

이후 hostip:8080/info.php 접속 phpinfo 화면이 뜸

 

2. MariaDB

2.1. MariaDB란? 

오픈소스 관계형 데이터베이스 관리 시스템

 

2.2. MariaDB 설치 및 적용

#MariaDB 설치
sudo apt-get install mariadb-server maria-client

#DB 중지, 시작, 부팅시 활성화 명령어
sudo systemctl stop mysql.service
sudo systemctl start mysql.service
sudo systemctl enable mysql.service

 

#보안 설정
sudo mysql_secure_installation

#보안 설정 후 재시작
sudo systemctl restart mysql.service

 

#mariaDB로 접근
sudo mysql -u root -p

 

DB & 사용자 생성 후 권한 부여

#wpdb DB생성
CREATE DATABASE wpdb;

#사용자 생성
CREATE USER 'wpdb-user'@'localhost' IDENTIFIED BY 'wp-pw';

#권한 부여
GRANT ALL ON wpdb.* TO 'wpdb-user'@'localhost' IDENTIFIED BY 'wp-pw' WITH GRANT OPTION;

#종료
FLUSH PRIVILEGES;
EXIT;

 

 

3. WordPress

3.1. WordPress란?

php로 작성된 온라인 오픈소스 웹사이트 제작 도구

 

3.2. WordPress 설치 및 적용

#wordpress 설치
sudp apt-get install wget
sudo wget -O /tmp/wordpress.tar.gz "http://wordpress.org/latest/tar/gz"
sudo tar -xvzf /tmp/wordpress.tar.gz -C /var/www/html

 

hostip:8080/wordpress로 접속해보았을때 "Your PHP installation appears to be missing the MySQL extension which is required by WordPress." 라는 문구가 나오면 php-mysql 설치

apt-get install php-mysql

 

MariaDB와 연동

#파일 수정
vi /var/www/html/wordpress/wp-config-sample.php

#DB와 계정 정보를 편집
define('DB_NAME', 'wpdb');
define('DB_USER', 'wpdb-user');
define('DB_PASSWORD', 'wp-pw');
define('DB_HOST', 'localhost');

밑부분의 인증키도 https://api.wordpress.org/secret-key/1.1/salt/ 에 접속하여 복붙하여 접속

(복붙하기 위해 가상머신 내에서 파일을 편집하는 것이 아닌 맥 컴퓨터에서 접속하여 파일을 편집함)

 

#wp-config-sample.php 파일 이름 변경
mv /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
복사했습니다!