Để cài WordPress trên VPS Ubuntu, bạn cần một VPS sạch, domain đã trỏ về IP, quyền SSH sudo, rồi cài web server, PHP, database, tải WordPress, cấu hình virtual host và hoàn tất trình cài đặt trên trình duyệt. Với người mới, tôi khuyên làm chậm từng bước và backup trước khi chỉnh cấu hình quan trọng.
Cài WordPress trên VPS không giống bấm vài nút trong hosting control panel. Bạn có nhiều quyền hơn, nhưng cũng phải tự chịu trách nhiệm nhiều hơn: web server, PHP, database, SSL, backup và bảo mật.
Nếu bạn mới chuyển từ shared hosting sang VPS, bài này sẽ đi theo cách dễ hiểu nhất: dùng Ubuntu, Apache, MySQL/MariaDB và PHP. Đây là hướng tiếp cận quen thuộc, nhiều tài liệu, dễ debug. Khi đã quen, bạn có thể chuyển sang Nginx hoặc stack tối ưu hơn.
Cần chuẩn bị gì trước khi cài WordPress trên VPS Ubuntu?
Bạn nên chuẩn bị một VPS Ubuntu mới, tài khoản SSH có quyền sudo, domain đã mua, và một ít thời gian để kiểm tra từng bước. Đừng cài vội trên máy đang chạy website quan trọng nếu bạn chưa có backup.
Checklist nhanh: VPS Ubuntu 22.04/24.04, IP public, quyền SSH, domain hoặc subdomain, mật khẩu database đủ mạnh, email quản trị WordPress và kế hoạch backup.
Nếu website phục vụ khách Việt Nam, vị trí máy chủ cũng quan trọng. Bạn có thể đọc thêm bài thuê VPS Việt Nam có lợi gì để hiểu thêm về latency, hỗ trợ và trải nghiệm truy cập.

Bước 1: Cập nhật Ubuntu và cài Apache
Sau khi SSH vào VPS, việc đầu tiên là cập nhật danh sách gói và nâng cấp các gói đang có. Đây là bước nhỏ nhưng giúp tránh nhiều lỗi phiên bản cũ.
sudo apt update
sudo apt upgrade -y
sudo apt install apache2 -y
sudo systemctl enable --now apache2
Mở trình duyệt vào IP của VPS. Nếu bạn thấy trang mặc định của Apache, web server đã chạy. Nếu chưa thấy, hãy kiểm tra firewall, cloud firewall hoặc reverse proxy phía trước. Tôi thường không chỉnh firewall bừa khi chưa chắc port nào đang được dùng.
Bước 2: Cài MySQL hoặc MariaDB và tạo database cho WordPress
WordPress cần database để lưu bài viết, cấu hình, người dùng và dữ liệu plugin. MySQL và MariaDB đều dùng được. Ví dụ với MySQL:
sudo apt install mysql-server -y
sudo mysql_secure_installation
Sau đó tạo database và user riêng cho WordPress. Không nên dùng tài khoản root database cho website.
sudo mysql
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'mat_khau_manh_o_day';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Hãy lưu lại tên database, user và mật khẩu ở nơi an toàn. Sai thông tin này là lý do rất phổ biến khiến màn hình cài WordPress báo lỗi kết nối database.
Bước 3: Cài PHP và các extension cần thiết
WordPress chạy bằng PHP, nên bạn cần cài PHP cùng vài extension quen thuộc. Trên Ubuntu mới, phiên bản PHP trong repo mặc định thường đủ dùng cho đa số website.
sudo apt install php libapache2-mod-php php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl -y
php -v
Nếu website dùng WooCommerce, builder nặng hoặc plugin ảnh, bạn sẽ cần theo dõi thêm memory limit và max execution time. Với site mới, đừng tăng mọi giới hạn lên quá cao chỉ vì thấy ai đó hướng dẫn; hãy tăng khi có lý do.
Bước 4: Tải WordPress và đặt quyền thư mục
Tải WordPress bản mới nhất từ wordpress.org, giải nén vào thư mục web root của domain.
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo mkdir -p /var/www/example.com
sudo rsync -av wordpress/ /var/www/example.com/
sudo chown -R www-data:www-data /var/www/example.com
sudo find /var/www/example.com -type d -exec chmod 755 {} +
sudo find /var/www/example.com -type f -exec chmod 644 {} +
Thay example.com bằng domain thật của bạn. Quyền file không cần quá mở. Nếu chmod 777 để “cho chạy”, website có thể chạy thật, nhưng rủi ro bảo mật tăng mạnh.
Bước 5: Cấu hình Apache Virtual Host cho domain
Tạo file virtual host để Apache biết domain nào trỏ vào thư mục WordPress nào.
sudo nano /etc/apache2/sites-available/example.com.conf
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
</VirtualHost>
Bật site và module rewrite để permalink của WordPress hoạt động đúng:
sudo a2ensite example.com.conf
sudo a2enmod rewrite
sudo apache2ctl configtest
sudo systemctl reload apache2
Bước 6: Trỏ domain về VPS và chạy trình cài WordPress
Trong trang quản trị DNS, tạo bản ghi A cho domain chính về IP VPS. Nếu dùng www, tạo thêm CNAME hoặc A record phù hợp. Chủ đề này tôi có viết riêng ở bài cách trỏ domain về VPS.
Khi DNS đã nhận, mở domain trên trình duyệt. Bạn sẽ thấy màn hình chọn ngôn ngữ và nhập thông tin database. Điền đúng tên database, user, mật khẩu, host thường là localhost, rồi tạo tài khoản quản trị.
Bước 7: Cài SSL miễn phí bằng Let’s Encrypt
Website WordPress nên chạy HTTPS ngay từ đầu. Với Apache, Certbot là lựa chọn quen thuộc.
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d example.com -d www.example.com
Sau khi xong, kiểm tra lại bằng cách mở https://example.com. Nếu SSL lỗi, thường do DNS chưa trỏ đúng, port 80/443 bị chặn, hoặc domain đang đi qua proxy/CDN cấu hình chưa chuẩn.
Sau khi cài WordPress xong nên kiểm tra gì?

Đây là phần nhiều người bỏ qua. Website “vào được” chưa có nghĩa là đã sẵn sàng chạy thật.
- Vào Settings → Permalinks và chọn cấu trúc URL thân thiện.
- Cập nhật WordPress, theme và plugin.
- Cài plugin cache vừa đủ, tránh cài nhiều plugin tối ưu cùng chức năng.
- Thiết lập backup định kỳ cho file và database.
- Kiểm tra quyền file, tài khoản admin, mật khẩu và đăng nhập.
- Theo dõi RAM/CPU nếu VPS nhỏ. Bài cách chọn cấu hình VPS sẽ giúp bạn ước lượng tốt hơn.
Lưu ý thật tế: nếu bạn đang dùng một nền tảng deploy như Dokploy, Coolify hoặc reverse proxy Docker, đừng tự ý bật thêm dịch vụ chiếm port 80/443 trên cùng VPS. Hãy kiểm tra kiến trúc hiện tại trước, vì xung đột port có thể làm site đang chạy bị gián đoạn.
Các lỗi thường gặp khi cài WordPress trên VPS Ubuntu
Lỗi đầu tiên là domain chưa trỏ đúng IP. Bạn nhập domain nhưng trình duyệt vẫn ra website cũ hoặc không phản hồi. Hãy kiểm tra DNS bằng dig, nslookup hoặc công cụ DNS checker.
Lỗi thứ hai là không kết nối được database. Khi đó hãy kiểm tra lại tên database, user, password và quyền grant. Đừng vội cài lại cả VPS.
Lỗi thứ ba là permalink bị 404. Với Apache, thường bạn chưa bật mod_rewrite hoặc virtual host chưa cho AllowOverride All. Với Nginx, cần cấu hình try_files đúng.
Khi nào nên thuê dịch vụ hoặc dùng panel thay vì tự cài?
Nếu bạn chỉ cần website chạy ổn để bán hàng, không muốn đụng lệnh Linux, dùng hosting hoặc panel quản trị có thể tiết kiệm thời gian hơn. Nhưng nếu bạn muốn hiểu hạ tầng, tối ưu chi phí và kiểm soát sâu, tự cài WordPress trên VPS là bài học rất đáng làm.
Với website doanh nghiệp, lựa chọn tốt không phải lúc nào cũng là cấu hình mạnh nhất. Quan trọng là có backup, bảo mật, theo dõi tài nguyên và người chịu trách nhiệm khi lỗi xảy ra.
Câu hỏi thường gặp về cài WordPress trên VPS Ubuntu
Cài WordPress trên VPS Ubuntu có khó không?
Không quá khó nếu bạn quen SSH và làm theo từng bước. Phần dễ sai nhất thường là cấu hình virtual host, quyền thư mục và kết nối database.
Nên dùng Apache hay Nginx để cài WordPress trên VPS?
Apache dễ bắt đầu hơn với người mới, còn Nginx thường nhẹ và phổ biến cho site cần tối ưu hiệu năng. Nếu mới học, bạn có thể bắt đầu với Apache trước.
Có cần trỏ domain trước khi cài WordPress không?
Không bắt buộc, nhưng nên trỏ domain sớm để cấu hình virtual host và SSL đúng ngay từ đầu. Nếu chưa có domain, bạn vẫn có thể test bằng IP tạm thời.
VPS 1GB RAM có cài WordPress được không?
Có, nhưng nên dùng cache, hạn chế plugin nặng và theo dõi RAM thường xuyên. Website bán hàng hoặc traffic cao nên cân nhắc 2GB RAM trở lên.
Sau khi cài WordPress xong cần làm gì tiếp?
Bạn nên bật HTTPS, đổi permalink, cài plugin cần thiết, thiết lập backup, cập nhật theme/plugin và kiểm tra quyền file để giảm rủi ro bảo mật.

