Chọn một trong ba cách
Tại HELPER VPS, chỉ cần chọn image khi tạo máy chủ là bước chuẩn bị WordPress giảm đi nhiều. Chọn một cách hợp với tình huống của bạn.
- Image WordPress: Nginx, MySQL, PHP và WordPress được cài trên Ubuntu 24.04. Chỉ cần hoàn tất màn hình cài đặt trên trình duyệt là xong, cách nhanh nhất để mở một blog.
- Image LEMP: tự đưa WordPress lên máy chủ đã có sẵn Nginx, MySQL, PHP. Tốt khi muốn đặt nhiều trang trên một máy chủ hoặc tự quyết định cấu trúc thư mục và cấu hình.
- Image Docker: chạy WordPress và cơ sở dữ liệu bằng container. Tiện khi chuyển trang sang máy chủ khác hoặc tạo cùng một môi trường nhiều lần.
Một blog nhỏ có thể bắt đầu với gói chung nhỏ nhất 12GB, trong khi các cửa hàng trực tuyến hoặc trang web đông khách sẽ mở trang nhẹ nhàng hơn trên máy chủ NVMe hiệu năng cao với ổ đĩa nhanh. Các đề xuất về kích thước có trên trang WordPress VPS.
Kết nối tên miền trước
Nếu định dùng tên miền, kết nối trước khi cài thì nhận luôn chứng chỉ HTTPS một lần. Trong trang quản lý DNS nơi bạn mua tên miền, tạo hai bản ghi dưới đây.
- Bản ghi A: tên @ (và www), giá trị là địa chỉ IPv4 của máy chủ
- Bản ghi AAAA: tên @ (và www), giá trị là địa chỉ IPv6 của máy chủ
Bản ghi lan truyền thường mất từ vài phút đến vài giờ. Chạy ping -c 3 example.com trên máy chủ, nếu hiện IP máy chủ của bạn là đã sẵn sàng. Trong các lệnh dưới đây, hãy thay example.com bằng tên miền của bạn.
Cách 1. Bắt đầu ngay bằng image WordPress
- Trên màn hình tạo máy chủ, chọn khu vực và kích thước rồi chọn WordPress trong danh sách image.
- Khi máy chủ chuyển sang đang chạy, mở
http://YOUR_SERVER_IPtrên trình duyệt. - Chọn ngôn ngữ, đặt tiêu đề trang, tên đăng nhập, mật khẩu, email quản trị là cài xong.
- Vào trang quản trị bằng
http://YOUR_SERVER_IP/wp-admin.
Đặt mật khẩu quản trị dài và phức tạp, tên đăng nhập dùng tên chỉ bạn biết thay vì admin để vững vàng trước các lần thử đăng nhập. Kết nối tên miền và HTTPS chỉ cần làm theo bước HTTPS bên dưới.
Cách 2. Tự cài trên máy chủ LEMP
Image LEMP đã cài sẵn Nginx, MySQL, PHP-FPM. Chỉ cần thêm phần mở rộng PHP cần cho WordPress, cơ sở dữ liệu và cấu hình trang. Lấy Ubuntu 24.04 làm chuẩn, các bản Ubuntu khác và Debian cũng cùng thứ tự.
Bước 1. Cài phần mở rộng PHP
apt update
apt install -y php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl php-imagick
php -v
ls /run/php/php -v hiển thị phiên bản PHP, ls /run/php/ hiển thị tên socket PHP-FPM. Ubuntu 24.04 dùng PHP 8.3 nên thấy php8.3-fpm.sock, Debian 13 dùng PHP 8.4 nên thấy php8.4-fpm.sock. Dùng nguyên tên này trong cấu hình Nginx bên dưới.
Bước 2. Tạo cơ sở dữ liệu và người dùng
Khi đã kết nối bằng root, chạy mysql là vào MySQL không cần mật khẩu. Tạo cơ sở dữ liệu và người dùng riêng cho WordPress bằng bốn dòng dưới đây. Đổi mật khẩu thành chuỗi dài và ghi lại.
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'change_this_long_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;Bước 3. Tải WordPress
cd /var/www
curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz && rm latest.tar.gz
chown -R www-data:www-data /var/www/wordpressĐổi chủ thư mục sang người dùng web server (www-data) thì màn hình cài đặt trên trình duyệt tự tạo tệp cấu hình, và plugin, theme cũng cài ngay từ trang quản trị.
Bước 4. Cấu hình trang Nginx
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
root /var/www/wordpress;
index index.php;
client_max_body_size 64m;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginxNếu nginx -t hiện syntax is ok, test is successful là cấu hình đúng. Nếu chưa có tên miền, ghi _ vào server_name và xóa liên kết trang mặc định (/etc/nginx/sites-enabled/default) là mở được bằng địa chỉ IP.
Bước 5. Hoàn tất cài đặt trên trình duyệt
Mở http://example.com sẽ thấy màn hình cài đặt. Điền tên cơ sở dữ liệu wordpress, người dùng wpuser, mật khẩu đặt ở bước 2, host localhost rồi đặt tiêu đề trang và tài khoản quản trị là xong.
Cách 3. Cài bằng Docker Compose
Với máy chủ tạo từ image Docker hoặc máy chủ đã tự cài Docker, một tệp là chạy cùng lúc WordPress và MariaDB. Đổi hai mật khẩu thành chuỗi dài.
mkdir -p /opt/wordpress && cd /opt/wordpress
cat > compose.yaml <<'EOF'
services:
db:
image: mariadb:11
restart: unless-stopped
environment:
MARIADB_DATABASE: wordpress
MARIADB_USER: wpuser
MARIADB_PASSWORD: change_this_long_password
MARIADB_ROOT_PASSWORD: change_this_other_password
volumes:
- db:/var/lib/mysql
wordpress:
image: wordpress:latest
restart: unless-stopped
depends_on:
- db
ports:
- "80:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: change_this_long_password
WORDPRESS_DB_NAME: wordpress
volumes:
- wp:/var/www/html
volumes:
db:
wp:
EOF
docker compose up -dMở http://YOUR_SERVER_IP sẽ thấy màn hình cài đặt. Thông tin cơ sở dữ liệu đã có sẵn trong tệp nên chỉ cần đặt tiêu đề trang và tài khoản quản trị. Bài viết và tệp tải lên nằm trong volume wp, cơ sở dữ liệu nằm trong volume db, nên đổi container sang phiên bản mới vẫn giữ nguyên.
Khi gắn HTTPS cho trang chạy bằng Docker, đặt reverse proxy phía trước là gọn gàng. Dùng image Coolify hoặc Dokploy, chỉ cần nhập tên miền trên giao diện là tự gắn luôn chứng chỉ, đơn giản hơn nữa.
Gắn chứng chỉ HTTPS
Image WordPress và máy chủ LEMP nhận chứng chỉ miễn phí Let's Encrypt bằng Certbot và gắn ngay vào Nginx. Tên miền phải đang trỏ về IP máy chủ.
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.comNhập email và đồng ý điều khoản là chứng chỉ được cấp và HTTPS được thêm vào cấu hình Nginx. Certbot tự động gia hạn chứng chỉ. Sau đó trong Cài đặt > Tổng quan của trang quản trị WordPress, đổi Địa chỉ WordPress và Địa chỉ trang web sang https. Nếu dùng tường lửa, mở hai cổng bằng ufw allow 80,443/tcp.
Các cấu hình nên làm sau khi cài
- Đường dẫn tĩnh: chọn kiểu Tên bài viết trong Cài đặt > Đường dẫn tĩnh để địa chỉ dễ đọc. Dòng try_files trong cấu hình Nginx ở trên xử lý các địa chỉ này.
- Dung lượng tải lên: để tải ảnh lớn hay tệp theme, tăng
client_max_body_sizecủa Nginx cùngupload_max_filesize,post_max_sizetrong/etc/php/8.3/fpm/php.inilên cùng mức rồi chạysystemctl restart php8.3-fpm. - Gửi email: email đăng ký, quên mật khẩu, thông báo đơn hàng hãy kết nối bằng plugin SMTP tới cổng 587 hoặc 465 của dịch vụ gửi email. Cách làm có trong hướng dẫn gửi email.
- Cập nhật: lõi WordPress, plugin, theme cập nhật trên trang quản trị, còn máy chủ định kỳ cập nhật bằng
apt update && apt upgrade -y. - Sao lưu: bài viết và cơ sở dữ liệu là tài sản không tạo lại được. Hãy bật sao lưu tự động khi tạo máy chủ hoặc lưu bản sao theo cách trong hướng dẫn sao lưu và snapshot.
Khi muốn cài lại từ đầu, chọn lại image WordPress trong mục cài đặt lại trên trang máy chủ là về trạng thái sạch. Ổ đĩa được cài mới nên hãy tải bài viết cần thiết trước bằng Công cụ > Xuất, và tham khảo thứ tự trong hướng dẫn cài đặt lại.
