- vừa được xem lúc

Hướng dẫn cài đặt LEMP stack trên Ubuntu 20.04 - 18.04

0 0 23

Người đăng: Trương Văn Hân

Theo Viblo Asia

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]

Bình luận

Bài viết tương tự

- vừa được xem lúc

Cài đặt WSL / WSL2 trên Windows 10 để code như trên Ubuntu

Sau vài ba năm mình chuyển qua code trên Ubuntu thì thật không thể phủ nhận rằng mình đã yêu em nó. Cá nhân mình sử dụng Ubuntu để code web thì thật là tuyệt vời.

0 0 374

- vừa được xem lúc

Phân quyền đơn giản với package Laravel permission

Như các bạn đã biết, phân quyền trong một ứng dụng là một phần không thể thiếu trong việc phát triển phần mềm, dù đó là ứng dụng web hay là mobile. Vậy nên, hôm nay mình sẽ giới thiệu một package có thể giúp các bạn phân quyền nhanh và đơn giản trong một website được viết bằng PHP với framework là L

0 0 421

- vừa được xem lúc

Sử dụng Swagger để xây dựng API documentation

Giới thiệu về Swagger. RESTful API là một tiêu chuẩn dùng trong việc thiết kế API cho các ứng dụng web (thiết kế Web services) để tiện cho việc quản lý các resource.

0 0 1k

- vừa được xem lúc

So sánh Interface và Abstract trong lập trình hướng đối tượng.

Tổng quan. Interface và Abstract class là 2 khái niệm cơ bản trong lập trình OOP.

0 0 48

- vừa được xem lúc

CURL và cách sử dụng trong PHP

Giới Thiệu. CURL là bộ thư viện được sử dụng để giúp thực hiện việc chuyển dữ liệu thông qua nhiều giao thức khác nhau (như HTTP, FPT...). Với giao thức HTTP, cURL hỗ trợ việc gửi dữ liệu sử dụng tất cả các phương thức hiện có như GET, POST, PUT, DELETE... cURL cũng hỗ trợ việc chuyền dữ liệu sử dụn

0 0 77

- vừa được xem lúc

Thêm dòng dữ liệu mới (MySQL) trong Laravel

Chào các bạn, Laravel hiện đang là hot trend trong "thế giới PHP". 1. Cấu hình cơ bản ban đầu. .

0 0 38