Virtual Hosts là thuật ngữ của Apache, Virtual Hosts là phương pháp cấu hình để sử dụng nhiều domain trên một máy chủ duy nhất. Điều này sẽ giúp chúng ta tiết kiệm được ngân sách vì không phải bỏ tiền để thuê thêm máy chủ mà có thể sử dùng một máy chủ duy nhất để chạy nhiều website.
WordPress là một mã nguồn mở miễn phí, viết bằng ngôn ngữ lập trình PHP và sử dụng cở sở dữ liệu MySQL. WordPress được biết đến như một CMS miễn phí nhưng tốt, dễ sử dụng và phổ biến nhất trên thế giới.
I.Chuẩn bị
Để tiến hành bài này chúng ta cần phải có VPS đã cài đặt LAMP
Các bạn tham khảo bài trước ở link dưới đây
Xem hướng dẫn ở đây
Chúng ta cần có một hoặc nhiều domain
Ở đây tôi đã có domain là maxserver.com
II.Tiến hành
1.Tạo Virtual Hosts
Đầu tiên chúng ta sẽ tạo một thư mục để chứa các code Web của chúng ta
# mkdir -p /var/www/maxserver.com/public_html
Chúng ta cũng cần có thư mục chứ log riêng của từng domain
# mkdir /var/www/maxserver.com/log/
Phân quyền cho thư mục
# chmod -R 755 /var/www/
Cấu trúc thư mục của apache2
/etc/apache2/sites-available/ :Thư mục chưa các file cấu hình VirtualHost
/etc/apache2/sites-enabled/ : Nếu muốn cho domain đc cấu hình trong thư mục /etc/apache2/sites-available/ thì phải enabled file cấu hình đó lên bằng cách tạo liên kết đến thư mục này
/etc/apache2/sites-available/000-default.conf : file cấu hình VirtualHost mặc định của hệ thống ,dựa vào file này bạn cấu hình nhiều domain khác
/etc/apache2/sites-available/default-ssl.conf : Đây cũng là file cấu hình mặc định của hệ thống ,dựa vào file này để cấu hình ssl
Ví dụ ta tạo file cấu hình cho domain paste.vn
# nano /etc/apache2/sites-available/maxserver.com.conf
với nội cung như sau :
<VirtualHost *:80> ServerName maxserver.com ServerAlias www.maxserver.com ServerAdmin contact@maxserver.com DocumentRoot /var/www/maxserver.com/public_html ErrorLog /var/www/maxserver.com/log/error.log CustomLog /var/www/maxserver.com/log/access.log combined <Directory /var/www/maxserver.com/public_html> Options FollowSymLinks AllowOverride All Order allow,deny Allow from all Require all granted </Directory> </VirtualHost>
Bây giờ ta sẽ enabled file paste.vn.conf bằng lệnh sau
# a2ensite maxserver.com
Sẽ cho kết quả nhu sau ;
Xóa file cấu hình mặc định của nó để tránh lỗi xung đột
# rm /etc/apache2/sites-available/000-default.conf # rm /etc/apache2/sites-enabled/000-default.conf
Khởi động lại dịch vụ apache2
# service apache2 reload
Ta tạo thử 1 file để xem kết quả
# nano /var/www/maxserver.com/public_html/index.html
Có nội dung như sau
<html> <head> <title>maxserver</title> </head> <body> <h1>Chuc mot ngay tot lanh!</h1> </body> </html>
Để kiểm tra các bạn truy cập vào địa chỉ domain thông qua trinh duyệt web, nếu hiển thị nội dung của file index.html là thành công
2.Cài WordPress
Tải về Wordpress
Sau khi cài đặt xong Server Blocks, chúng ta tiếp tục cài đặt Wordpress để hoàn thành 1 trang web
Đầu tiên chúng ta tạo một thư mục chứa các file download và vào trong thư mục đó
# mkdir /download # cd /download
Chạy lệnh sau để download file nén của Wordpress về VPS
# wget http://wordpress.org/latest.tar.gz
Download xong chúng ta cần phải giải nén file đó, gõ lệnh sau để giải nén
# tar -xzvf latest.tar.gz
Sau khi giải nén chúng ta sẽ thấy thư mục /wordpress trong thư mục /download , chúng ta sẽ di chuyển tất cả nội dung bên trong thư mục /wordpress về thư mục chứ code là /var/www/paste.vn/public_html
# mv /download/wordpress/* /var/www/maxserver.com/public_html
Phân quyền, gán user và group cho thư mục chứa code
# chmod -R 755 /var/www/maxserver.com/public_html # chown -R www-data:www-data /var/www/maxserver.com/public_html
Tạo database và user cho wordpress
Ta đăng nhập vào cơ sở dữ liệu
# mysql -u root -p
Sau khi đăng nhập thành công vào trong cơ sở dữ liệu, ta bắt đầu nhập dữ liệu
Tạo database, ở đây tôi ví dụ tạo database có tên wordpressdb
MariaDB [(none)]> CREATE DATABASE wordpressdb;
Để tạo user, thực hiện lệnh sau
MariaDB [(none)]> CREATE USER wordpressuser@localhost;
Set quyền cho user truy cập vào db, để đơn giản bạn hãy gán toàn quyền cho user này (all privileges)
MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpressdb.* TO wordpressuser@localhost IDENTIFIED BY 'wordpresspasswd';
Refresh cơ sở dữ liệu để reload lại quyền:
MariaDB [(none)]> FLUSH PRIVILEGES;
Thoát cơ sở dữ liệu:
MariaDB [(none)]> exit
Cài đặt Wordpress thông qua trình duyệt web
Truy cập và địa chỉ: http://<Địa chỉ ip VPS>/wp-admin/install.php để thực hiện cài đặt WP.
Trang web sẽ báo chúng ta cần nhập cơ sở dữ liệu cho trang web, nhập các thông số chúng ta đã tạo ở trên.
Ấn vào Run the install để bắt đầi cài đặt
Khai báo các thông số rồi ấn install WordPress
Sau khi cài đặt xong web của bạn sẽ có giao diện như sau
III.Kết
Đến đây là kết thúc bài Hướng dẫn tạo Virtual Hosts và cài đặt WordPress trên Ubuntu 16. Bây giờ các bạn đã có khả năng tạo ra nhiều Virtual Hosts trên một máy chủ và cũng đã tự tạo cho mình 1 trang web có code là wordpress. Hẹn gặp lại các bạn trong các bài tiếp theo. Chúc các bạn thành công!