Trong bài viết này, chúng ta sẽ sử dụng 2 máy CentOS 7, một máy chạy WordPress và một máy chạy MySQL.
Đặc điểm của WordPress
WordPress là nền tảng hỗ trợ xây dựng nhiều loại website như blog, website tin tức, thương mại điện tử hoặc website chia sẻ nội dung.
Một số đặc điểm nổi bật gồm:
-
Giao diện quản trị tương đối dễ sử dụng và có cộng đồng hỗ trợ lớn.
-
Có thể bảo vệ một số nội dung bằng mật khẩu.
-
Hỗ trợ quản lý nhiều website với tính năng Multisite.
-
Tự động lưu nội dung trong quá trình chỉnh sửa.
-
Có thể quản trị và xuất bản nội dung trên nhiều thiết bị.
-
Hỗ trợ xem trước bài viết trước khi xuất bản.
-
Hỗ trợ nhiều ngôn ngữ và có hệ sinh thái plugin, theme phong phú.
Mô hình cài đặt
Môi trường thử nghiệm sử dụng:
-
Server Web: Cài Apache, PHP và WordPress.
-
Server SQL: Cài MySQL và lưu trữ database WordPress.
Trong mô hình mạng thử nghiệm, các interface được cấu hình để vừa có khả năng truy cập Internet, vừa có mạng nội bộ giúp Web Server kết nối đến SQL Server.
Cấu hình ban đầu trên hai server
Trên cả Web Server và SQL Server, bài lab thực hiện tắt Firewall và SELinux:
systemctl stop firewalld
setenforce 0
Việc tắt Firewall và SELinux phù hợp để đơn giản hóa bài lab. Với môi trường thực tế, nên cấu hình rule phù hợp thay vì tắt hoàn toàn các cơ chế bảo vệ này.
Cấu hình trên SQL Server
1. Cài đặt MySQL Server
Đầu tiên, cài repository và MySQL:
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-server
Khởi động MySQL:
Tiếp theo, chạy công cụ thiết lập bảo mật:
mysql_secure_installation
Thực hiện theo hướng dẫn trên màn hình để cấu hình mật khẩu và các thiết lập cần thiết cho MySQL.
2. Tạo Database và User cho WordPress
Đăng nhập MySQL bằng tài khoản root:
Nhập mật khẩu đã thiết lập trước đó.
Tạo database dành cho WordPress:
CREATE DATABASE wordpress;
Các câu lệnh MySQL cần kết thúc bằng dấu ;.
Tiếp theo, tạo tài khoản để Web Server kết nối tới MySQL:
CREATE USER 'user1'@'192.168.136.126' IDENTIFIED BY 'password';
Trong đó:
-
192.168.136.126: IP của Web Server.
-
user1: tài khoản WordPress sử dụng để kết nối MySQL.
-
password: mật khẩu của tài khoản.
Cấp quyền cho user:
GRANT ALL PRIVILEGES ON wordpress.* TO 'user1'@'%' IDENTIFIED BY 'password';
Cập nhật lại quyền:
Sau đó thoát MySQL:
Cấu hình trên Web Server
1. Cài đặt Apache
Cài Apache bằng Yum:
Khởi động Apache và thiết lập tự động chạy cùng hệ thống:
systemctl start httpd
systemctl enable httpd
Sau đó truy cập IP của Web Server bằng trình duyệt:
Nếu trang mặc định của Apache xuất hiện thì dịch vụ đã hoạt động.
2. Cài đặt PHP
Trong bài lab này sử dụng PHP 5.6. Trước tiên, cài đặt repository EPEL và Remi:
yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Cài Yum Utils:
Kích hoạt repository PHP 5.6:
yum-config-manager --enable remi-php56
Cài PHP cùng các package cần thiết:
yum install php php-mysql php-gd php-pear -y
Kiểm tra phiên bản PHP:
Sau khi hoàn tất, khởi động lại Apache:
Bạn cũng có thể tạo file info.php để kiểm tra PHP trên trình duyệt.
Cài đặt WordPress trên Web Server
1. Tải WordPress
Di chuyển đến thư mục chứa website:
Tải WordPress:
wget https://wordpress.org/latest.tar.gz
Giải nén:
Di chuyển source WordPress:
mv wordpress/* /var/www/html/
Tạo file cấu hình từ file mẫu:
mv wp-config-sample.php wp-config.php
2. Cấu hình kết nối đến Database Server
Mở file:
vi /var/www/html/wp-config.php
Các thông số database mặc định cần chỉnh sửa gồm:
define('DB_NAME', 'database_name_here');
define('DB_USER', 'username_here');
define('DB_PASSWORD', 'password_here');
define('DB_HOST', 'localhost');
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');
Theo thông tin đã tạo trên SQL Server, thay đổi thành:
define('DB_NAME', 'wordpress');
define('DB_USER', 'user1');
define('DB_PASSWORD', 'password');
define('DB_HOST', '192.168.136.127');
Trong đó 192.168.136.127 là địa chỉ IP nội bộ của SQL Server.
Điểm quan trọng ở mô hình này là DB_HOST không sử dụng localhost, bởi MySQL đang chạy trên một server khác.
Hoàn tất cài đặt WordPress
Sau khi cấu hình xong, truy cập Web Server bằng tên miền hoặc IP:
WordPress sẽ chuyển đến giao diện cài đặt. Chọn ngôn ngữ, nhập các thông tin website cần thiết và nhấn Install WordPress.
Sau khi quá trình hoàn tất, sử dụng username và password vừa tạo để đăng nhập trang quản trị WordPress.