- Bước 1: Đăng nhập VPS bằng quyền Root
- Bước 2: Chạy lệnh cài đặt InitOps
- Bước 3: Chọn Deploy hệ thống
- Bước 4: Chọn phiên bản PHP và nhập thông tin website
- Bước 5: Chờ InitOps tự động triển khai
- Bước 6: Hoàn tất cài đặt WordPress
- Bước 7: Cài SSL bằng Certbot (BẮT BUỘC)
- Lưu ý khi dùng Cloudflare
- Cách mở lại InitOps sau này
- Nếu nâng cấp VPS thì làm gì?
- Nếu muốn đổi Domain hoặc gia hạn SSL
- Nếu muốn triển khai thêm website trên cùng VPS
- Nếu muốn sao lưu Database
- Nếu muốn giám sát máy chủ qua Discord
- Nếu muốn chuyển đổi phiên bản PHP
- Nếu muốn xem đường dẫn cấu hình
- Kết luận
InitOps được tạo ra để giải quyết chính xác vấn đề đó. Toàn bộ quá trình triển khai WordPress chuẩn Production được tự động hóa gần như hoàn toàn. Bạn chỉ cần vài phút thao tác là đã có ngay một môi trường WordPress tối ưu sẵn cho Ubuntu 24.04 LTS.
Bước 1: Đăng nhập VPS bằng quyền Root
Trước tiên, hãy đăng nhập vào VPS Ubuntu bằng SSH:
ssh root@your-server-ip
InitOps yêu cầu quyền root để có thể cài đặt và cấu hình toàn bộ hệ thống. Nếu không chạy bằng quyền root, script sẽ tự động dừng lại.
Bước 2: Chạy lệnh cài đặt InitOps
Sau khi đăng nhập VPS thành công, chạy lệnh:
curl -sSL https://inithtml.com/initops/install.sh | bash
InitOps sẽ tự động:
- Cập nhật hệ thống.
- Cài Python3 và Curl.
- Tải Deployment Engine.
- Kiểm tra lỗi cú pháp script.
- Cấp quyền thực thi.
- Khởi chạy menu cài đặt.
Toàn bộ quá trình diễn ra hoàn toàn tự động.
Bước 3: Chọn Deploy hệ thống
Sau khi chạy xong, menu InitOps sẽ xuất hiện:
[1] Deploy LEMP Stack & WordPress
[2] Re-apply Performance Optimizations
[3] Help & Tuning Paths
[4] Change Domain & Renew SSL
[5] Backup WordPress Database
[6] Server Monitor (Discord Webhook)
[7] Add New Website
[8] Configure DNS-01 SSL Auto-Renewal (Cloudflare)
[9] PHP Version Manager (Install / Switch 8.3 · 8.4 · 8.5)
[0] Exit
Để bắt đầu triển khai website WordPress mới, hãy chọn:
1
Bước 4: Chọn phiên bản PHP và nhập thông tin website
InitOps sẽ yêu cầu bạn chọn phiên bản PHP:
[1] PHP 8.3 (security fixes only, EOL Dec 2027)
[2] PHP 8.4 (stable, recommended)
[3] PHP 8.5 (latest)
Sau đó, nhập thông tin website:
- Domain website.
- Tên Database.
- Table Prefix.
Ví dụ:
-> Domain name: site.com
-> Database name: wp_production
-> Table prefix: wp_
Tên Database User và mật khẩu sẽ được hệ thống tự động sinh ngẫu nhiên bằng cơ chế bảo mật nội bộ để tránh lộ cấu trúc hoặc bị dò quét.
Bước 5: Chờ InitOps tự động triển khai
Sau khi nhập thông tin xong, InitOps sẽ tự động cài:
- Nginx.
- MariaDB (tự động harden: xóa anonymous users, test DB, vô hiệu hóa remote root).
- PHP 8.3/8.4/8.5 FPM.
- Redis Server.
- Fail2Ban.
- Iptables Firewall.
- WordPress.
- WP-CLI.
- Certbot SSL.
Đồng thời hệ thống cũng tự động:
- Tối ưu Nginx theo RAM và CPU.
- Tối ưu PHP-FPM (tính toán max_children dựa trên RAM thực tế còn lại).
- Tối ưu MariaDB.
- Cấu hình OPcache theo profile phần cứng (tránh cache overflow).
- Cấu hình Redis Unix Socket.
- Thiết lập System Cron cho WordPress.
- Áp dụng cấu hình bảo mật Production.
Toàn bộ đều diễn ra tự động mà không cần chỉnh tay từng file cấu hình.
Bước 6: Hoàn tất cài đặt WordPress
Sau khi deploy xong, InitOps sẽ hiển thị:
- PHP Version đã chọn.
- Database Name.
- Database User.
- Database Password.
- Table Prefix.
- Web Root.
Hãy lưu lại các thông tin này thật kỹ vì hệ thống sẽ không hiển thị lại lần thứ hai.
Bước 7: Cài SSL bằng Certbot (BẮT BUỘC)
Đây là bước cực kỳ quan trọng.
Rất nhiều người thấy website đã chạy được HTTP rồi nên quên luôn việc cài SSL. Nhưng thực tế, sau khi chạy InitOps xong, bạn vẫn cần phải kích hoạt HTTPS bằng Certbot để website hoạt động đúng chuẩn Production.
Sau khi domain đã trỏ đúng về VPS, hãy chạy:
certbot --nginx -d domain.com
Nếu website dùng cả www:
certbot --nginx -d domain.com -d www.domain.com
InitOps đã cài sẵn:
- Certbot.
- Python3 Certbot Nginx.
nên bạn chỉ cần chạy lệnh là SSL sẽ tự động được cấu hình vào Nginx.
Sau đó chỉ cần mở domain bằng trình duyệt để hoàn tất bước cài đặt giao diện WordPress.
Lưu ý khi dùng Cloudflare
Nếu bạn dùng Cloudflare, hãy nhớ:
- Trỏ domain về đúng IP VPS trước.
- Giữ biểu tượng Cloudflare ở trạng thái đám mây màu xám (DNS Only).
Đây gần như là yêu cầu bắt buộc để Certbot xác thực SSL thành công.
Nếu bật Proxy Cloudflare (đám mây màu cam) quá sớm, quá trình HTTP Challenge của Let’s Encrypt có thể thất bại vì request không đi trực tiếp tới VPS.
Sau khi Certbot cài SSL xong hoàn toàn, lúc đó mới nên bật lại Proxy Cloudflare nếu cần CDN hoặc chống DDoS.
Ngoài ra, InitOps còn hỗ trợ chuyển đổi sang gia hạn SSL tự động qua Cloudflare DNS (DNS-01 Challenge) bằng menu [8] — không cần mở cổng 80, không phụ thuộc webroot, hoạt động ngay cả khi Nginx tắt.
Cách mở lại InitOps sau này
Sau lần cài đầu tiên, bạn không cần chạy lại dòng curl dài nữa.
Chỉ cần gõ:
initops
ở bất kỳ thư mục nào để mở lại menu quản trị.
Nếu nâng cấp VPS thì làm gì?
Sau khi nâng RAM hoặc CPU VPS, bạn nên mở lại InitOps và chọn:
[2] Re-apply Performance Optimizations
InitOps sẽ tự động quét lại cấu hình phần cứng mới rồi tối ưu lại:
- Nginx.
- PHP-FPM (tính toán lại worker dựa trên RAM thực tế).
- MariaDB.
- Redis.
- OPcache theo profile mới.
để tận dụng tài nguyên mới của VPS. Hệ thống cũng tự động detect phiên bản PHP 8.3/8.4/8.5 đang chạy mà không cần chỉnh sửa thủ công.
Nếu muốn đổi Domain hoặc gia hạn SSL
Chọn trong menu:
[4] Change Domain & Renew SSL
InitOps sẽ tự động:
- Cập nhật cấu hình Nginx Vhost.
- Chạy Certbot cấp SSL mới.
- Thực hiện Search & Replace toàn bộ Database bằng WP-CLI.
- Cập nhật lại
siteurlvàhome. - Xóa Redis Object Cache để tránh lỗi cache sau migration.
Toàn bộ quá trình được validate trước khi reload dịch vụ, đảm bảo website ổn định trong quá trình chuyển đổi.
Nếu muốn triển khai thêm website trên cùng VPS
Chọn trong menu:
[7] Add New Website
InitOps sẽ tự động:
- Tạo database riêng cho website mới.
- Cấp Redis DB index riêng (tự động tăng từ DB 1).
- Tạo Nginx vhost riêng.
- Cho phép bạn tự chọn tên thư mục web root.
- Thiết lập System Cron riêng cho site mới.
Không ảnh hưởng đến website gốc tại /var/www/html.
Nếu muốn sao lưu Database
Chọn trong menu:
[5] Backup WordPress Database
InitOps sẽ tự động:
- Export Database bằng WP-CLI.
- Nén file bằng
gzipđể tiết kiệm dung lượng. - Tự động xóa file
.sqlgốc sau khi nén. - Đặt tên file theo Domain và Timestamp.
- Dọn dẹp các backup cũ hơn 30 ngày để tránh đầy ổ cứng.
Các file backup được lưu tại:
/var/backups/wordpress
Nếu muốn giám sát máy chủ qua Discord
Chọn trong menu:
[6] Server Monitor (Discord Webhook)
InitOps sẽ tự động:
- Phát hiện cấu hình phần cứng và điều chỉnh tần suất kiểm tra phù hợp (5–10 phút).
- Theo dõi 4 chỉ số: Disk, RAM, CPU, MySQL.
- Gửi cảnh báo 🔴 màu đỏ khi vượt ngưỡng.
- Gửi thông báo 🟢 màu xanh khi phục hồi.
- Chống spam: mỗi cảnh báo chỉ gửi 1 lần cho đến khi có recovery.
- Hỗ trợ song ngữ Anh — Việt cho giao diện và nội dung Discord.
Ngưỡng cảnh báo mặc định: Disk >85%, RAM >90%, CPU >90%, MySQL không phản hồi.
Nếu muốn chuyển đổi phiên bản PHP
Chọn trong menu:
[9] PHP Version Manager (Install / Switch 8.3 · 8.4 · 8.5)
Tính năng này cho phép bạn:
- Cài thêm PHP: Cài song song nhiều phiên bản PHP (8.3, 8.4, 8.5) — phiên bản mới được cài nhưng chưa kích hoạt, không tiêu tốn RAM.
- Switch zero-downtime: Khởi động PHP-FPM mới song song với phiên bản cũ, cập nhật fastcgi_pass trên toàn bộ vhost, validate Nginx, rồi mới tắt FPM cũ — website không bị gián đoạn.
- Rollback tức thì: Giữ nguyên packages phiên bản cũ, chỉ cần một lần switch ngược là hệ thống trở lại trạng thái trước đó.
- Tự động tái áp dụng tuning: Mỗi khi switch, InitOps tự động regenerate pool config, runtime INI và OPcache tuning theo đúng profile phần cứng.
- PHP CLI đồng bộ: Tự động cập nhật
update-alternativesđể WP-CLI và cron jobs luôn chạy đúng phiên bản PHP đang active.
Quy trình switch an toàn:
- Generate InitOps tuning (pool + runtime + OPcache) cho nhánh PHP mới.
- Validate PHP-FPM config trước khi chạm vào bất kỳ service nào đang live.
- Start php[new]-fpm song song php[old]-fpm (cả 2 socket cùng tồn tại).
- Rewrite fastcgi_pass trong toàn bộ vhost, validate nginx -t.
- Nếu nginx -t thất bại → rollback toàn bộ vhost ngay lập tức, site không hề down.
- Chỉ khi nginx reload thành công mới stop và disable php[old]-fpm.
Nếu muốn xem đường dẫn cấu hình
Chọn:
[3] Help & Tuning Paths
Menu này hiển thị:
- Đường dẫn Nginx Config.
- PHP-FPM Pool.
- PHP Runtime INI.
- OPcache Tuning.
- MariaDB Tuning.
- Redis Config.
- WP Config.
- System Cron.
- Server Monitor Config.
Đây là khu vực dành cho việc tinh chỉnh chuyên sâu sau khi deploy hoàn tất.
Lưu ý: Để đảm bảo toàn bộ file và thư mục WordPress luôn có quyền sở hữu chính xác sau khi hoàn tất mọi thao tác cấu hình hoặc chỉnh sửa thủ công, bạn nên chạy lại lệnh:
chown -R www-data:www-data /var/www/html
Điều này giúp tránh các lỗi permission phát sinh ngoài ý muốn trong quá trình vận hành.
Kết luận
InitOps v1.9.0 giúp biến quá trình dựng một VPS WordPress từ hàng giờ cấu hình thủ công thành vài phút thao tác gần như tự động hoàn toàn. Với khả năng lựa chọn linh hoạt giữa PHP 8.3, 8.4 và 8.5, quản lý và chuyển đổi phiên bản PHP không downtime, hỗ trợ multi-site, giám sát real-time và tự động gia hạn SSL qua Cloudflare DNS, chỉ cần chuẩn bị một Ubuntu 24.04 sạch, chạy đúng dòng lệnh và làm đủ bước Certbot SSL là bạn đã có ngay một môi trường WordPress tối ưu, bảo mật và sẵn sàng chạy Production.
Bình luận