Việc chuyển từ shared hosting sang VPS là một bước tiến quan trọng, mang lại cho bạn toàn quyền kiểm soát, hiệu suất vượt trội và khả năng tùy biến không giới hạn. Bài viết này từ InterData sẽ hướng dẫn bạn chi tiết từng bước cài đặt WordPress trên một máy chủ ảo chạy Ubuntu với LAMP Stack, từ việc chuẩn bị server, cấu hình Apache, tạo database MySQL cho đến xử lý lỗi và các bước bảo mật cơ bản.
Chuẩn bị trước khi cài đặt
Trước khi bắt đầu quá trình cài đặt, bạn cần đảm bảo các yếu tố nền tảng đã sẵn sàng. Một sự chuẩn bị kỹ lưỡng sẽ giúp toàn bộ quá trình diễn ra suôn sẻ và tránh được các lỗi không đáng có. Điều này đặc biệt quan trọng khi làm việc trực tiếp với môi trường server.
Đầu tiên, bạn cần có quyền truy cập vào VPS Ubuntu của mình thông qua SSH (Secure Shell). Hãy sử dụng một tài khoản người dùng có quyền sudo
, không nên dùng tài khoản root
để thực hiện các tác vụ hàng ngày vì lý do bảo mật. Việc này tạo ra một lớp bảo vệ, yêu cầu xác thực cho các lệnh quan trọng.
Cuối cùng, hãy cập nhật hệ thống của bạn. Việc chạy các lệnh cập nhật đảm bảo rằng tất cả các gói phần mềm trên server của bạn đều là phiên bản mới nhất, đi kèm với các bản vá bảo mật quan trọng.
Sử dụng các lệnh sau để cập nhật hệ thống:
sudo apt update
sudo apt upgrade
Cài đặt LAMP Stack trên Ubuntu
LAMP là một bộ phần mềm mã nguồn mở phổ biến dùng để xây dựng các trang web động. Tên gọi LAMP là viết tắt của Linux, Apache, MySQL và PHP. Đây là nền tảng vững chắc và được kiểm chứng qua thời gian để vận hành hàng triệu website WordPress trên toàn cầu. Chúng ta sẽ cài đặt từng thành phần một.
Cài Apache
Apache là một web server mạnh mẽ và phổ biến nhất thế giới. Apache chịu trách nhiệm xử lý các yêu cầu từ trình duyệt của người dùng và gửi về các nội dung của website WordPress. Bạn có thể cài đặt Apache bằng một lệnh đơn giản.
sudo apt install apache2
Sau khi cài đặt, bạn cần cấu hình tường lửa UFW (Uncomplicated Firewall) để cho phép lưu lượng truy cập web. Apache đăng ký một vài cấu hình ứng dụng với UFW. Bạn nên cho phép cấu hình linh hoạt nhất là ‘Apache Full’, vốn mở cả cổng 80 (HTTP) và 443 (HTTPS).
sudo ufw allow 'Apache Full'
Bạn có thể kiểm tra trạng thái của web server để chắc chắn Apache đang hoạt động:
sudo systemctl status apache2
Cài MySQL
Tiếp theo, bạn sẽ cài đặt MySQL, hệ quản trị cơ sở dữ liệu sẽ lưu trữ tất cả bài viết, trang, thông tin người dùng và các thiết lập của trang WordPress. Việc cài đặt cũng được thực hiện qua một lệnh duy nhất.
sudo apt install mysql-server
Khi cài đặt hoàn tất, bạn nên chạy một script bảo mật đi kèm để gỡ bỏ một số cài đặt mặc định không an toàn và khóa quyền truy cập vào hệ thống cơ sở dữ liệu. Script này sẽ hỏi bạn một loạt câu hỏi để tăng cường bảo mật cho MySQL.
sudo mysql_secure_installation
Cài PHP và các module cần thiết
WordPress được xây dựng bằng ngôn ngữ lập trình PHP. Do đó, bạn cần cài đặt PHP trên server để xử lý và tạo ra nội dung cho trang web. Ngoài ra, bạn cũng cần cài thêm các module PHP mở rộng để WordPress có thể kết nối với database và sử dụng các chức năng cần thiết.
sudo apt install php libapache2-mod-php php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip
Lệnh trên cài đặt PHP cùng với các phần mở rộng quan trọng nhất. Sau khi cài đặt, bạn có thể kiểm tra phiên bản PHP đã được cài đặt thành công hay chưa bằng lệnh:
php -v
Cấu hình Apache cho WordPress
Sau khi đã có các thành phần của LAMP, bạn cần “chỉ” cho Apache biết nơi chứa mã nguồn WordPress và cách xử lý các yêu cầu cho tên miền của bạn. Việc này được thực hiện thông qua việc tạo một file cấu hình VirtualHost riêng cho website.
Tạo một file cấu hình mới cho tên miền của bạn (ví dụ: yourdomain.com.conf
):
sudo nano /etc/apache2/sites-available/yourdomain.com.conf
Dán nội dung sau vào file, thay yourdomain.com
bằng tên miền thực của bạn:
<VirtualHost *:80>
ServerName yourdomain.com
ServerAlias www.yourdomain.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/yourdomain.com
<Directory /var/www/yourdomain.com>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
```AllowOverride All` là một chỉ thị quan trọng, cho phép WordPress sử dụng file `.htaccess` để tạo các đường dẫn đẹp (pretty permalinks).
Sau đó, bạn cần kích hoạt trang web mới này và bật module `rewrite` của Apache:
```bash
sudo a2ensite yourdomain.com.conf
sudo a2enmod rewrite
sudo systemctl restart apache2
Tải và upload WordPress lên VPS
Bây giờ, bạn sẽ tải phiên bản WordPress mới nhất từ trang chủ chính thức. Bạn nên tải trực tiếp về server trong thư mục /tmp
, một thư mục tạm thời, để giữ cho hệ thống gọn gàng.
cd /tmp
wget https://wordpress.org/latest.tar.gz
Giải nén file vừa tải về. Thao tác này sẽ tạo ra một thư mục có tên là wordpress
.
tar -xzvf latest.tar.gz
Tiếp theo, bạn sẽ tạo thư mục gốc cho website như đã khai báo trong file VirtualHost và di chuyển mã nguồn WordPress vào đó.
sudo mkdir /var/www/yourdomain.com
sudo mv /tmp/wordpress/* /var/www/yourdomain.com/
Bước cuối cùng nhưng cực kỳ quan trọng là cấp quyền sở hữu thư mục này cho người dùng web của Apache (www-data
). Điều này cho phép WordPress tự động cập nhật, cài đặt plugin và upload media.
sudo chown -R www-data:www-data /var/www/yourdomain.com
Tạo cơ sở dữ liệu cho WordPress
Mỗi trang WordPress cần một cơ sở dữ liệu riêng để hoạt động. Bạn sẽ đăng nhập vào giao diện dòng lệnh của MySQL để tạo một database và một người dùng riêng cho trang web của mình. Việc tạo người dùng riêng cho mỗi database là một thực hành bảo mật tốt.
Đăng nhập vào MySQL:
sudo mysql
Thực hiện các lệnh SQL sau. Hãy thay thế your_database
, your_user
, và your_password
bằng các giá trị của riêng bạn và ghi nhớ chúng.
CREATE DATABASE your_database DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Cấu hình WordPress lần đầu
Tất cả các bước chuẩn bị trên server đã hoàn tất. Bây giờ, bạn sẽ truy cập tên miền của mình trên trình duyệt web để bắt đầu quá trình cài đặt 5 phút nổi tiếng của WordPress.
Khi truy cập, WordPress sẽ chào mừng bạn và yêu cầu thông tin kết nối cơ sở dữ liệu. Hãy điền các thông tin bạn đã tạo ở bước trước (tên database, tên người dùng, mật khẩu). Các thông số còn lại thường có thể giữ nguyên giá trị mặc định (localhost
và wp_
).
Sau khi kết nối database thành công, WordPress sẽ yêu cầu bạn điền thông tin cho trang web:
- Site Title: Tên trang web của bạn.
- Username: Tên tài khoản quản trị viên (tránh dùng “admin”).
- Password: Một mật khẩu mạnh cho tài khoản quản trị.
- Your Email: Email để nhận các thông báo quản trị.
Nhấn “Install WordPress”, và quá trình cài đặt sẽ hoàn tất.
Kiểm tra và xử lý lỗi thường gặp
Trong quá trình cài đặt, bạn có thể gặp một số lỗi phổ biến. Việc hiểu nguyên nhân sẽ giúp bạn xử lý chúng nhanh chóng. Dưới đây là một số vấn đề thường gặp và cách khắc phục chúng.
- Error Establishing a Database Connection: Lỗi này có nghĩa là WordPress không thể kết nối tới cơ sở dữ liệu. Nguyên nhân có thể do sai thông tin trong file
wp-config.php
, hoặc dịch vụ MySQL chưa hoạt động. Hãy kiểm tra lại thông tin và trạng thái dịch vụ MySQL (sudo systemctl status mysql
). - Lỗi không thể upload ảnh hoặc cài plugin: Đây là dấu hiệu của việc phân quyền thư mục không chính xác. Hãy đảm bảo bạn đã chạy lệnh
chown
để cấp quyền chowww-data
như đã hướng dẫn. - Các trang con bị lỗi 404 Not Found: Vấn đề này xảy ra khi module
mod_rewrite
của Apache chưa được kích hoạt hoặc cấu hìnhAllowOverride
trong VirtualHost không phải làAll
. Hãy kiểm tra lại các bước cấu hình Apache.
Tối ưu và bảo mật sau khi cài đặt
Cài đặt thành công chỉ là bước khởi đầu. Để website hoạt động hiệu quả và an toàn, bạn cần thực hiện thêm một vài bước tối ưu và bảo mật. Đây là những hành động cơ bản nhưng mang lại giá trị lớn.
Đầu tiên và quan trọng nhất là cài đặt chứng chỉ SSL để mã hóa kết nối giữa người dùng và server. Bạn có thể nhận chứng chỉ SSL miễn phí từ Let’s Encrypt bằng công cụ Certbot.
sudo apt install certbot python3-certbot-apache
sudo certbot --apache
Certbot sẽ tự động lấy chứng chỉ và cấu hình Apache để sử dụng HTTPS cho bạn.
Ngoài ra, hãy xem xét việc cài đặt một plugin caching (như W3 Total Cache hoặc WP Super Cache) để tăng tốc độ tải trang. Đồng thời, thiết lập một giải pháp backup tự động cho cả mã nguồn và cơ sở dữ liệu là điều bắt buộc để phòng ngừa rủi ro mất dữ liệu.
Kết luận
Bạn đã hoàn thành quá trình cài đặt một trang web WordPress trên VPS Ubuntu của riêng mình bằng LAMP Stack. Quá trình này mang lại cho bạn sự hiểu biết sâu sắc về cách các thành phần của một web server hoạt động cùng nhau và đặt nền móng để bạn có thể quản lý, mở rộng website một cách chủ động.
Các bước tiếp theo bạn nên cân nhắc bao gồm việc thiết lập hệ thống sao lưu định kỳ, tìm hiểu các biện pháp bảo mật nâng cao cho server, và bắt đầu tùy biến trang web của mình với các theme và plugin mạnh mẽ.
Nếu bạn đang tìm kiếm một nền tảng VPS mạnh mẽ, ổn định với ổ cứng SSD NVMe tốc độ cao để triển khai dự án của mình, hãy tham khảo dịch vụ của chúng tôi.
Tham khảo dịch vụ VPS giá rẻ uy tín – SSD NVMe tốc độ cao – Hỗ trợ đa dạng hệ điều hành