안녕하세요!
오늘은 Centos8(Server)에 Wordpress를 구축해보도록 하겠습니다.
먼저 워드프레스란 무엇인지 간단하게 알아보겠습니다.
| Wordpress?
워드프레스는 PHP를 기반으로 만들어진 오픈소스 웹사이트 제작 플랫폼
Mysql 또는 MariaDB를 주로 사용
전 세계 웹사이트 점유율 42%
1. 웹서버 설치
dnf를 사용하여 워드프레스에 필요한 패키지를 설치하도록 하겠습니다.
dnf -y install httpd php php-mysqlnd mariadb-server
httpd, php, php-mysqlnd, mariadb-server을 설치하였습니다.
(Debian 계열에서는 httpd가 아닌 apache2라는 명칭을 사용)
- 기존에 설치가 되어있는지 확인해보기.
rpm -qa httpd php mariadb-server
2. 설치 확인 및 시작
설치가 잘 되었는지 확인해 보겠습니다.
systemctl status httpd //설치 상태 확인
systemctl start httpd //httpd 시작
start 또는 restart를 사용하여 Active : active(running) 시작시켜줍니다.
3. 방화벽 해제
외부에서의 접속을 하기 위해 방화벽을 해제합니다.
서버버전임으로 명령어를 통해 방화벽을 해제 하겠습니다.
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
방화벽을 해제하고 재 시작 해주는 명령어 입니다.
4. DB 확인 및 설정하기
워드프레스에서 사용할 마리아DB를 시작합니다.
enable의 경우 재부팅을 자동으로 시작할 수 있게 등록하는 것입니다.
systemctl restart mariadb # 시작하기
systemctl enable mariadb # 자동시작 등록
systemctl status mariadb # 상태보기
- MariaDB
아래 명령어를 통해 MariaDB 접속을 합니다.
mysql -u root –p
Enter password라고 나오면 최초 비밀번호는 설정이 되어 있지 않기 때문에 Enter를 입력하여 넘어갑니다.
MariaDB의 관련된 자세한 내용은 추후에 작성하도록 하겠습니다.
우선 워드프레스 구축을 위한 데이터베이스를 생성해 보겠습니다.
create database wpDB;
Query OK라는 것은 에러 없이 데이터베이스가 생성된 것입니다.
데이터베이스 사용자(user) 및 권한 설정을 하겠습니다.
grant all privileges on wpDB.* to wpUser@localhost identified by '1234';
grant all -> 모든 권한
wpDB.* -> wpDB의 모든 테이블을 지칭
wpUser라는 사용자를 생성함과 동시에 wpDB(데이터베이스)의 모든 권한을 부여해주었습니다.
비밀번호는 구축을 위한 연습임으로 간단하게 1234로 설정하였습니다.
5. 워드프레스 한글 버전 가져오기
cd /var/www/html
# 디렉토리를 html로 이동
wget https://ko.wordpress.org/latest-ko_KR.tar.gz
# wget를 통해 해당 url의 워드프레스 한글버전을 다운
tar zxvf latest-ko_KR.tar.gz
# 다운 받은 압푹파일 압축 해제
6. 권한과 소유자 변경
5번에서 압축해제한 워드프레스의 디렉터리의 권한과 소유자를 변경합니다.
chmod 707 wordpress
# 707 권한 모든 사용자가 읽고 쓸 수 있음
chown -R apache.apache wordpress
# 소유자를 apache로 변경
7. 워드프레스 설정
cd wordpress
# 디렉터리 이동
mv wp-config-sample.php wp-config.php
# 설정 파일 생성
vi 편집기를 통해 wp-config.php파일을 설정하겠습니다.
vi wp-config.php
: set nu 명령어를 사용하여 라인번호를 보면서 23, 26, 29번 줄을 내용을 변경합니다.
마리아DB의 생성시 진행했던(4번) 그대로 넣어줍니다.
: wp 하여 저장을 합니다.
웹서버 파일도 수정하겠습니다.
vi /etc/httpd/conf/httpd.conf
: set nu 명령어를 사용하여 라인번호를 보면서 122, 134, 154번 줄을 내용을 변경합니다.
그림처럼 /wordpress 와 All로 수정해줍니다.
: wp 하여 저장을 합니다.
8. php-json 설치 및 시작
dnf install php-json
systemctl restart httpd
php-json 패키지를 설치하고 httpd 패키지를 재 시작합니다.
워드프레스를 사용하기 위한 준비는 끝이 났습니다.
현재까지 잘 진행되었다면 ip 접속시 다음과 같은 화면을 확인 할 수 있습니다.
브라우저를 열고 CentOS의 ip를 확인하고 주소창에 ip를 입력해 접속해 보겠습니다.
아래 이미지와 같이 나온다면 워드프레스 설치는 완료되었습니다.
9. wordpress 설정
- 사이트 제목 : 사이트 이름
- 사용자 명 : 관리자 ID (admin)
- 비밀번호 : 관리자 PW
- 이메일 : 관리용 이메일
해당 내용을 입력하고 워드프레스 설치 버튼을 클릭합니다.
사용자명과 비밀번호로 로그인 하시면 다음과 같은 화면이 나옵니다.
워드프레스 구축 성공 하였습니다.
http://192.168.111.100
ip주소로만 입력하면 일반 사용자에게 보여지는 페이지입니다.
DNS서비스를 통해 원하는 도메인으로 변경할 수도 있습니다.
도메인과 관련해서는 다음에 알아보도록 하겠습니다.
http://192.168.111.100/wp-admin
ip주소 뒤에 /wp-admin을 넣어주면 관리자 페이지 (글쓰기, 설정 등 ) 에 접속할 수 있습니다.
워드프레스 설치시 생성했더 ID/PW로 로그인하면 관리자 즉 admin 페이지를 확인 할 수 있습니다.
10. 오류 발생
오류가 발생하는 기본적인 이유는 db를 생성할 때 오타가 있거나 방화벽을 열어주지 않아서 입니다.
#데이터베이스 사용자 확인
use mysql;
select user,host from user;
# 권한 확인
show grants for board@localhost;
# 사용자 삭제 후 새로 생성
drop user board@localhost;
DB 생성에 대한 내용을 확인해보고 3번 방화벽 해제부터 8번까지 다시 한번 확인해보도록 합니다.
오늘은 로컬환경에서 CentOS(server)에 Wordpress를 구축해보았습니다.
워드프레스 설정과 활용법 등은 추후에 가능하다면 또 다뤄보도록 하겠습니다.
감사합니다.
'Linux(리눅스)' 카테고리의 다른 글
MobaXterm(모바엑스텀) 설치하고 SSH 접속해보기 (0) | 2023.07.26 |
---|---|
RPM 기본 명령어 (0) | 2023.07.02 |
CentOS Samba 설정 하기 (0) | 2023.06.07 |
CentOS 고정 ip 설정하기 (0) | 2023.06.02 |
CentOS8-This.repo 변경하기 (0) | 2023.06.02 |