Hướng dẫn triển khai Website WordPress trên AWS
Triển khai một trang web WordPress trên Amazon Web Services (AWS) là một bước quan trọng cho những ai muốn phát triển và quản lý nội dung trực tuyến. Trong bài viết này, chúng ta sẽ thực hiện từng bước để triển khai một website WordPress hoàn chỉnh, bắt đầu từ việc thiết lập cơ sở dữ liệu RDS đến việc cấu hình máy chủ EC2 và cài đặt WordPress.
Mục lục
- Giới thiệu
- Bước 1: Chuẩn bị cơ sở dữ liệu RDS
- Bước 2: Khởi chạy EC2 Instance
- Bước 3: Cài đặt LAMP stack trên EC2
- Bước 4: Tải xuống và cấu hình WordPress
- Bước 5: Kết nối WordPress với RDS
- Bước 6: Khởi động lại Web Server
- Bước 7: Hoàn tất cài đặt WordPress
- Mẹo và lưu ý
- Những điều cần chú ý
- Câu hỏi thường gặp
Giới thiệu
Ngày hôm nay, chúng ta sẽ tiến hành một bước thú vị trong việc triển khai một website WordPress hoàn chỉnh trên AWS. Đây là một quy trình thực hành giúp bạn kết hợp các kỹ năng về quản lý cơ sở dữ liệu, mạng và ứng dụng. Hãy chuẩn bị sẵn sàng để khởi đầu hành trình này!
Bước 1: Chuẩn bị cơ sở dữ liệu RDS
Để bắt đầu, chúng ta cần thiết lập một cơ sở dữ liệu Amazon RDS. Hãy làm theo các bước sau:
- Truy cập vào Amazon RDS Console.
- Chọn Create database.
- Chọn MySQL (Free tier).
- Đặt tên cho DB instance là wordpress-db.
- Tạo một tên người dùng: admin (hoặc một cái tên dễ nhớ).
- Lưu lại mật khẩu, bạn sẽ cần nó trong quá trình cài đặt WordPress.
- Cấu hình security group để chỉ cho phép traffic MySQL từ security group của EC2 của bạn.
- Sao chép endpoint và port sau khi DB được tạo (bạn sẽ cần nó trong cấu hình WordPress).
Bước 2: Khởi chạy EC2 Instance
Tiếp theo, chúng ta sẽ khởi chạy một EC2 instance để lưu trữ ứng dụng WordPress:
- Khởi chạy một Amazon Linux 2 hoặc Ubuntu EC2 instance (t2.micro free tier).
- Gán một IAM role nếu cần để quản lý dễ dàng hơn.
- Cấu hình security group:
- Cho phép HTTP (80) từ mọi nơi (để phục vụ trang web của bạn).
- Cho phép SSH (22) từ địa chỉ IP của bạn (để truy cập quản trị).
- Cấu hình outbound cho phép tất cả (mặc định).
Bước 3: Cài đặt LAMP stack trên EC2
SSH vào instance EC2 của bạn:
bash
ssh -i your-key.pem ec2-user@<EC2-Public-IP>
Đối với Amazon Linux 2:
bash
# Cập nhật hệ thống
sudo yum update -y
# Cài đặt Apache
sudo yum install -y httpd
# Cài đặt PHP và các phần mở rộng
sudo amazon-linux-extras enable php7.4
sudo yum install -y php php-mysqlnd
# Khởi động Apache
sudo systemctl start httpd
sudo systemctl enable httpd
Đối với Ubuntu:
bash
sudo apt update && sudo apt upgrade -y
sudo apt install -y apache2 php php-mysql libapache2-mod-php
sudo systemctl enable apache2
sudo systemctl start apache2
Bước 4: Tải xuống và cấu hình WordPress
Chúng ta sẽ tải xuống WordPress và cấu hình nó:
bash
cd /var/www/html
# Tải xuống WordPress
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo cp -r wordpress/* /var/www/html/
# Thiết lập quyền truy cập đúng
sudo chown -R apache:apache /var/www/html # Amazon Linux
# hoặc
sudo chown -R www-data:www-data /var/www/html # Ubuntu
Bước 5: Kết nối WordPress với RDS
Chúng ta sẽ cấu hình WordPress để kết nối với cơ sở dữ liệu RDS:
- Trong thư mục
/var/www/html
, sao chép file cấu hình mẫu:
bash
cp wp-config-sample.php wp-config.php
- Chỉnh sửa file
wp-config.php
:
php
define('DB_NAME', 'your_db_name');
define('DB_USER', 'admin');
define('DB_PASSWORD', 'your_db_password');
define('DB_HOST', 'your-rds-endpoint:3306');
Bước 6: Khởi động lại Web Server
Khởi động lại máy chủ web để áp dụng các thay đổi:
bash
sudo systemctl restart httpd # Amazon Linux
# hoặc
sudo systemctl restart apache2 # Ubuntu
Bước 7: Hoàn tất cài đặt WordPress
Cuối cùng, mở trình duyệt và truy cập địa chỉ:
http://<EC2-Public-IP>/
Bạn sẽ thấy giao diện cài đặt của WordPress:
- Nhập:
- Tiêu đề trang
- Tên người dùng và mật khẩu quản trị
- Hoàn tất cài đặt → bây giờ bạn đã có một blog WordPress hoạt động trên AWS!
Mẹo và lưu ý
- Sử dụng Elastic IP để địa chỉ IP công cộng của EC2 không thay đổi.
- Đối với môi trường sản xuất, hãy bảo mật với SSL/TLS (Let’s Encrypt) và xem xét mở rộng thông qua Elastic Beanstalk hoặc ECS sau này.
- Luôn giữ cho security group của RDS chặt chẽ (chỉ cho phép kết nối từ EC2).
Những điều cần chú ý
Hơn 30% trang web trên toàn thế giới chạy trên WordPress — từ blog đến thương mại điện tử. Hôm nay, tôi đã triển khai một blog WordPress trên AWS sử dụng:
- Amazon EC2 để lưu trữ ứng dụng WordPress.
- Amazon RDS (MySQL) để lưu trữ dữ liệu WordPress.
- Apache + PHP trên EC2 để phục vụ ứng dụng.
Bài tập này đã kết nối các kỹ năng về mạng, quản lý cơ sở dữ liệu và lưu trữ ứng dụng trên đám mây. Nhìn thấy màn hình cài đặt WordPress tải từ instance EC2 của tôi là một cột mốc lớn.
Câu hỏi thường gặp
1. Tôi có thể sử dụng loại cơ sở dữ liệu nào khác không?
Có, bạn có thể sử dụng PostgreSQL hoặc MariaDB tùy thuộc vào nhu cầu của bạn.
2. Có cách nào để tự động sao lưu dữ liệu WordPress không?
Có, bạn có thể sử dụng các plugin sao lưu trong WordPress hoặc thiết lập sao lưu tự động trên RDS.
3. Tôi có thể mở rộng website khi lượng truy cập tăng không?
Có, bạn có thể sử dụng Elastic Beanstalk hoặc AWS ECS để mở rộng quy mô ứng dụng của mình một cách dễ dàng.