APM을 설치한 후 웹 사이트를 구축하는 것은 생각보다 쉽지 않다.
웹 사이트를 구축하기 위해선 기본 화면 및 메뉴 구성, 게시판이나 대관 등 사이트 별로 다양한 기능이 요구되며 이를 구현하기 위해 많은 프로그래밍이 요구되기 때문이다.
이런 어려움을 해결하기 위해 사용하는 CMS가 "WordPress"이다.
WordPress는 2003년 매트 물렌웨그가 창립하였으며 세계 최대의 오픈 소스 저작물 관리 시스템으로써 이 오픈 소스를 사용하여 구축된 웹 사이트가 전 세계의 30% 정도를 차지할 정도로 많이 활용되는 시스템이다.
WordPress는 오픈소스 설치형 블로그이자 CMS(Content Managemenet System)으로 코딩에 관련된 지식이 적더라도 직관적인 대시보드를 통해 웹 사이트를 구축할 수 있게 도와주는 시스템이다.
또한 다양한 플러그인이 존재하며 웹 표준을 따르기 때문에 사이트 구축하는 데 좋다는 특징을 가진다.
sudo systemctl start mariadb
sudo systemctl enable mariadb
mysql
mysql
을 입력하면 Database 및 Table을 생성할 수 있는 MariaDB 전용 콘솔 창이 뜬다.
여기에서 DB 생성을 위한 Query문을 입력하면 된다.
Query문 같은 경우 Linux 파트에서 자세히 다루기엔 복잡하고 깊이 있는 내용이므로 지금 설명하진 않겠다.
# Database 생성
CREATE DATABASE wpdb;
# wpUser라는 DB 사용 User와 비번 생성 & 권한 부여
GRANT ALL PRIVILEGES ON wpDB.* TO wpUser@localhost IDENTIFIED BY '1234';
Query문 입력 창은 exit
구문을 입력함으로써 종료할 수 있다.
SQL 구문 마지막에 꼭 ;
(세미콜론)을 붙여주자.
위 링크에 들어가 워드프레스를 설치한다.
리눅스 서버에 설치해야 하며 tar.gz 파일로 다운로드하는 것을 추천한다.
설치 사이트에 들어가기 싫다면 wget https://ko.wordpress.org/latest.tar.gz
구문을 통해 다운로드할 수도 있다.
마지막으로 다운로드한 워드 프레스 tar.gz 파일을 /var/www/html 경로로 이동시키자.
sudo mv wordpress-6.2-ko_KR.tar.gz /var/www/html
tar xvf wordpress-6.2-ko_KR.tar.gz
# wordpress 파일 소유권 변경
chown -R www-data:www-data wordpress
# wordpress 권한 변경
chown -R +775 wordpress
압축을 푼 결과물인 wordpress 디렉터리 하위에 있는 모든 파일 및 디렉터리의 User와 Group 권한을 apache에게도 부여해야 한다.
우분투에서는 apache2를 사용하는 사용자의 Username은 www-data
이므로 위와 같이 www-data
계정에 wordpress에 대한 권한을 줘야 한다.
그리고 일반 사용자들도 파일을 읽을 수 있어야 하므로 wordpress 디렉터리 하위에 있는 모든 파일에 "775" 혹은 "774" 권한을 부여해줘야 한다.
압축을 푼 결과물인 wordpress
디렉터리로 들어가 wp-config.php
파일을 수정해야 한다.
아마 wordpress
디렉터리에 들어가면 wp-config.php
파일이 없어 의문이 들 텐데, wp-config-sample.php
파일의 이름을 wp-config.php
로 변경한 뒤 파일을 수정해줘야 한다.
# wp-config.php라는 이름을 가진 wp-config-sample.php 파일을 복사하여 생성
cp wp-config-sample.php wp-config.php
# wp-config.php 파일 수정을 위해 VI Editor로 열기
vi wp-conifg.php
이후 VI Editor에서 set :nu
를 통해 넘버링을 붙인 뒤 23번째 줄부터 있는 DB 관련 세팅 구역에 생성했던 DB 값들을 넣어주면 된다.
21 // ** Database settings - You can get this info from your web host ** //
22 /** The name of the database for WordPress */
23 define( 'DB_NAME', 'wpDB' );
24
25 /** Database username */
26 define( 'DB_USER', 'wpUser' );
27
28 /** Database password */
29 define( 'DB_PASSWORD', '1234' );
/etc/apache2/apache2.conf
파일을 수정해야 한다.
이 파일 중 170번째 줄에 <Directory "/var/www">
로 적혀있는 구간이 있을 것이다.
여기를 <Directory "/var/www/html/wordpress">
로 바꿔주고 AllowOverride를 None All로 바꿔주면 된다.
<Directory /var/www/html/wordpress>
AllowOverride All
Require all granted
</Directory>
이 과정을 통해 모든 User는 /var/www/html/wordpress
에 접근할 수 있게 된다.
이제는 apache2가 기본적으로 /var/www/html
이 아닌 /var/www/html/wordpress
를 바라보게 해야 한다.
따라서 /etc/apache2/sites-available/000-default.conf
파일의 내용을 수정해줘야 하는데, DocumnetRoot
를 /var/www/html/wordpress
로 지정해 주면 된다.
DocumentRoot /var/www/html/wordpress
마지막으로 service restart apache2
를 통해 변경한 설정값을 적용시켜 주자.
http://[리눅스 IP 주소]
링크로 워드프레스 서비스에 접근해 보자.
위와 같은 창이 뜨면 성공적으로 Wordpress 서비스를 리눅스에 배포하여 모든 유저가 HTTP 프로토콜로 서비스에 접근할 수 있게 설정한 것이다.
워드프레스의 사용 방법은 Linux와는 큰 연관이 없으므로 따로 설명하지는 않겠다.