Giới thiệu

Ở bài viết trước mình đã hướng dẫn các bạn Cài đặt LAMP Stack trên Ubuntu 22.04, thì để tiếp tục Series về LAMP Stack thì ở bài viết này mình sẽ hướng dẫn các bạn cách thêm một website mới vào LAMP Stack vô cùng đơn giản. Mời các bạn xem tiếp phần thực hiện bên dưới nhé.

Hướng dẫn thực hiện

Lưu ý: Bạn nhớ thay lamp.damtrungkien.com bằng tên website của bạn. Và Domain phải được trỏ về IP máy chủ.

Đầu tiên hãy SSH vào máy chủ LAMP Stack của bạn và thực hiện lần lượt các bước sau

Bước 1: Tạo thư mục chứa dữ liệu website

Ví dụ ở bài viết này mình sẽ làm demo với website có tên lamp.damtrungkien.com thì cấu trúc tạo sẽ như sau

  • Tạo thư mục lưu dữ liệu website


NGUYENCANHSON.COM
sudo mkdir -p /var/www/lamp.damtrungkien.com/public_html 
    
  • Phân quyền User và các quyền đọc ghi cho thư mục website, ở đây mình set www-data


NGUYENCANHSON.COM
sudo chown www-data:www-data /var/www/lamp.damtrungkien.com/public_html
sudo chmod -R 755 /var/www
    
Them website vao LAMP Stack tren Ubuntu 2204
Thêm website vào LAMP Stack trên Ubuntu 22.04 27
  • Tạo nhanh nội dung cho website

Ở đây mình sẽ tạo nhanh một file index.html cho website



NGUYENCANHSON.COM
 sudo nano /var/www/lamp.damtrungkien.com/public_html/index.html
    

Thêm nội dung bên dưới và save lại.


  
    Welcome to LAMP Stack
  
  
    

Success! lamp.damtrungkien.com virtual host is working!

Bước 2: Tạo Virtual Host cho website mới

Thì mặc định trên máy chủ Apache, FIle Virtual Host sẽ có tên 000-default.conf và nằm tại đường dẫn /etc/apache2/sites-available/. Do đó khi bạn thêm một website mới vào Apache, bạn cần tạo một file Virtual Host cho website đó với cấu hình tương tự như file mặc định.

  • Copy nội dung file Virtual Host mặc định sang file Virtual Host mới


NGUYENCANHSON.COM
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/lamp.damtrungkien.com.conf
    
  • Chỉnh sửa nội dung Virtual Host mới


NGUYENCANHSON.COM
sudo nano /etc/apache2/sites-available/lamp.damtrungkien.com.conf
    

Bây giờ các bạn thêm nội dung bên dưới vào tương tự như hình.

    ServerName lamp.damtrungkien.com
    ServerAlias  www.lamp.damtrungkien.com
1693362404 767 Them website vao LAMP Stack tren Ubuntu 2204
Thêm website vào LAMP Stack trên Ubuntu 22.04 28
  • Kích hoạt cấu hình Virtual Host mới


NGUYENCANHSON.COM
sudo a2ensite lamp.damtrungkien.com.conf
    
1693362404 461 Them website vao LAMP Stack tren Ubuntu 2204
Thêm website vào LAMP Stack trên Ubuntu 22.04 29
  • Tắt cấu hình Virtual Host mặc định và khởi động lại Apache


NGUYENCANHSON.COM
sudo a2dissite 000-default.conf
sudo apache2ctl configtest
sudo systemctl restart apache2
    
1693362404 117 Them website vao LAMP Stack tren Ubuntu 2204
Thêm website vào LAMP Stack trên Ubuntu 22.04 30

Bước 3: Cài đặt SSL cho website

Để website được bảo mật và nhìn chuyên nghiệp hơn, các bạn nên cài đặt SSL cho website của mình. Và mình sẽ cài đặt SSL thông qua công cụ tự động Cerbot với các lệnh sau

  • Cài đặt Cerbot Apache


NGUYENCANHSON.COM
sudo apt install -y certbot python3-certbot-apache
    
  • Cho phép ‘Apache Full’ thông qua tường lửa, để sử dụng cả HTTP & HTTPS


NGUYENCANHSON.COM
sudo ufw allow 'Apache Full'
    
  • Cài đặt SSL cho website


NGUYENCANHSON.COM
sudo certbot --apache -d lamp.damtrungkien.com
    
root@ubuntu-2204:~# sudo certbot --apache -d lamp.damtrungkien.com
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Enter email address (used for urgent renewal and security notices)
 (Enter 'c' to cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N
Account registered.
Requesting a certificate for lamp.damtrungkien.com

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/lamp.damtrungkien.com/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/lamp.damtrungkien.com/privkey.pem
This certificate expires on 2022-10-05.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.

Deploying certificate
Successfully deployed certificate for lamp.damtrungkien.com to /etc/apache2/sites-available/lamp.damtrungkien.com-le-ssl.conf
Congratulations! You have successfully enabled HTTPS on https://lamp.damtrungkien.com

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you like Certbot, please consider supporting our work by:
 * Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
 * Donating to EFF:                    https://eff.org/donate-le
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Bước 4: Kiểm tra hoạt động website

Sau khi các bạn đã cấu hình hoàn tất, bây giờ các bạn có thể ra trình duyệt và truy cập với tên miền đã cấu hình trước đó để kiểm tra. Nếu truy cập ra nội dung bên dưới là đã thành công rồi nhé.

1693362404 996 Them website vao LAMP Stack tren Ubuntu 2204
Thêm website vào LAMP Stack trên Ubuntu 22.04 31

Chúc các bạn thực hiện thành công.!