Tại sao lại sử dụng LEMP Stack?
Bài viết dành cho các bạn đang muốn và có ý định triển khai website chạy bằng (PHP) lên VPS hệ điều hành Ubuntu 20.04 – 18.04.
LEMP sử dụng Nginx (Engin x) là một webserver có hiệu năng cao được tích hợp sẵn tính năng cân bằng tải tốt khi lượng truy cập lớn giúp website hoạt động ổn định hơn.
LEMP là viết tắt của L( Linux ), E( Engine x ), M( MySQL/MariaDB ), P( PHP ) và mình xin mạo phép được gọi đây là một trong những biến thể của web server. Biến thể ở đây là bạn có thể thay đổi thêm, xóa các thành phần trên để tạo ra một môi trường lý tưởng để chạy project của bạn một cách tốt nhất ví dụ đơn giản chúng ta có XAMPP. Trên máy tính windows các bạn cài XAMPP thì đã bao gồm Apache, MySQL, PHP. X là tổng hợp các hệ điều hành được XAMPP hỗ trợ hiện nay(Linux, Windows, MacOS) là các thành phần đã được có sẵn. Cài xong chỉ cần bấm nút “start” để bật lên, tuy nhiên khi sử dụng VPS hệ điều hành linux điển hình như Ubuntu thì sẽ không có giao diện. Bài viết này sẽ giúp các bạn tự cài đặt môi trường web server để chạy PHP.
Lưu ý: Bài viết chỉ giúp mọi người cài đặt và chạy được code của PHP, mình sẽ không giải thích quá sâu vào từng thành phần của LEMP stack. Nếu các bạn muốn mình viết sâu hơn về chủ đề này thì hãy comments để mình tiếp tục các phần sau. Trước khi làm theo mình, các bạn có thể đọc và tìm hiểu trước về các sử dụng command linux cơ bản hoặc của Ubuntu, cách sử dụng editor nano hoặc vim.
Tiền Setup
Cập nhật và nâng cấp các gói có sẵn và đã cũ trong hệ thống
sudo apt-get update && sudo apt-get upgrade -y
Câu lệnh trên giúp các bạn cập nhật các gói (package) có sẵn trong hệ thống có đường dẫn file: /etc/apt/sources.list.d, -y cuối câu dùng để chấp nhận các package cần thiết khi update và nâng cấp được để xuất.
Lưu ý: Phải chạy câu lệnh update trước câu lệnh nâng cấp upgrade. Vì update có chức năng đồng bộ hóa lại các index file từ các nguồn có trong /etc/apt/sources.list.d.
1. Cài đặt Nginx
Sau khi cập nhật và nâng cấp các gói trong hệ thống các bạn bắt đầu chạy các câu lệnh để cài đặt Nginx dưới đây.
sudo apt-get install nginx -y
Lưu ý: Nếu sau khi chạy câu lệnh trên hệ thống yêu cầu nhập khẩu, và mật khẩu khi nhập ở màn hình command thì mật khẩu sẽ không hiện ******* chỉ cần nhập xong và nhấn Enter.
Sau khi cài đặt xong chạy tiếp câu lệnh tra version (phiên bản) các bạn đã cài đặt:
sudo nginx -v
2. Cấu hình tường lửa.
Tại sao chúng ta cần cấu hình tường lửa? Tường lửa đảm bảo tính bảo mật và cho phép lưu lượng truy cập từ bên ngoài vào server qua các cổng (port) ,thông thường các web sẽ sử dụng hai giao thức là HTTP & HTTPS tương đương với cổng mặc định 80 & 443.
Các bạn chạy hai câu lệnh sau:
sudo ufw allow http
sudo ufw allow https
Nếu không cần thiết chạy https thì các bạn không cần chạy https. Sau khi chạy hai câu lệnh trên xong màn hình của bạn sẽ hiển thị như sau:
2.1 Khởi động nginx
Đầu tiên các bạn cần kiểm tra trạng thái hoạt động của Nginx bằng cách chạy câu lệnh sau:
sudo systemctl status nginx
Nếu màn hình hiện ra như này thì nginx chưa hoạt động: Để nginx hoạt động các bạn hãy chạy câu lệnh sudo systemctl start nginx:
sudo systemctl start nginx
Sau khi chạy câu lệnh trên xong các bạn hãy kiểm tra trạng thái của nginx. Như vậy là nginx đã hoạt động.
Sau đó chạy tiếp câu lệnh: sudo systemctl enable nginx. Giờ các bạn mở trình duyện và gõ: localhost hoặc 127.0.0.1.
Vậy là chúng ta đã khởi chạy webserver đầu tiên thành công. Các bạn có thể tự tìm hiểu cài đặt trước các service tiếp theo, mình sẽ bổ sung thêm cách cài đặt service và các bạn có thể so sánh cách cài của các bạn với mình để có cái nhìn khách quan hơn. Cảm ơn các bạn đã đọc đến hết bài viết hướng dẫn.
To be continued... Trích nguồn: DigitalOcean[https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-22-04]