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

Lời mở đầu

Chào các bạn, Trong bài này mình sẽ cài đặt LEMP stack trên Ubuntu 20.04. Mình cũng test thành công trên Ubuntu 20.10. Ngoài ra ếu bạn muốn cài trên centos, Debian thì xem các bài viết sau:

 

LEMP là gì? – Đây là viết tắt của (LINUX, EngineX, MySQL, PHP) là  môi trường nền linux với webserver Nginx với PHP và MySQL để sử dụng cho các ứng dụng như WordPress, forum.v.v. Một Stack thường dùng khác là LAMP stack (Linux, APACHE, MySQL, PHP) cũng được hướng dẫn trong blog này, mời bạn tìm đọc.

Bước 1: Chuẩn bị Server để cài đặt LEMP stack trên Ubuntu 20.04

Yêu cầu tối thiểu: Server chạy Ubuntu 20.x 64 bit, 1CPU, 1GB ram, 1 Network Card và kết nối internet. Trong bài tôi sử dụng VMware với cấu hình sau:
CPU: 2 Core

RAM: 4GB

SSD: 30GiB

OS: Ubuntu 20.04 LTS. Link tải: https://ubuntu.com/download/server

Chúng ta sang bước 2: Hướng dẫn cài đăt :), bắt tay vào việc thôi nào!

Bước 2: Cài đặt Nginx, MySQL, PHP trên Ubuntu 20.04 LTS

Note: Trong bài viết tôi luôn đang nhập server bằng user root vì các lệnh cài đặt yêu cầu quyền quản trị root. Với một số bạn khi cài đặt trên môi trường server thực có thể không được phép remote login bằng root t hì phải chuyển qua user root bằng cách gõ lệnh:

Sau khi nhập mật khẩu root sẽ được sử dụng quyền root để cài đặt. Bạn cũng có thể thêm sudo vào trước mỗi câu lệnh nếu hệ thống đã cài sudo và cấp quyền cho user của bạn.

Sử dụng su - command để chuyển sang root user

1. Update server trước khi bắt đầu cài đặt LEMP stack trên Ubuntu 20.04

Đầu tiên bạn cần update server đẻ nhận các gói cài đặt mới nhất. Sử dụng lệnh sau:

2. Cài đặt nginx webserver:

Bước tiếp theo là cài nginx web server. Bạn có thể kiểm tra phiên bản nginx sắp cài bằng lệnh:

lệnh kiểm tra gói cài đặt nginx mặc định

Phiên bản hiện tại được cung cấp từ repository mặc định của Ubuntu là nginx-1.18.0 (Bản nginx stable mới nhất). Nếu muốn cài phiên bản khác bạn có thể vào : https://nginx.org để tải và cài đăt.

Tiến hành cài đặt nginx bằng lệnh:

Confirm install nginx to ubuntu cài đặt LEMP stack trên Ubuntu 20.04

Bấm y và enter, nginx sẽ được cài đặt vào server.

Sau khi quá trình tải và cài đặt kết thúc, ta cấu hình cho nginx tự chạy mỗi khi khởi động máy:

Kiểm tra trạng thái nginx:

Nginx trong cài đặt LEMP stack trên Ubuntu 20.04

Vậy là nginx đã được cài đặt thành công trên ubuntu 20.04. Ta chuyển sang bước cài PHP

3. Cài PHP7.4 trên ubuntu 20.04

Bản PHP7.4 được coi là ổn định nhất hiện nay. Bản PHP này được cung cấp mặc định trên Ubuntu 20.04. Bạn có thể kiểm tra bằng lệnh:

apt list php7.4* | grep php7.4

list các gói php7.4 cung cấp bởi Ubuntu

Bạn có thể thấy php có rất nhiều các module bổ xung. Trong thực tế thường dùng các module sau:

php7.4 php7.4-fpm php7.4-curl php7.4-gd php7.4-json php7.4-mbstring php-pear php7.4-dev libmcrypt-dev php7.4-tidy php7.4-mysqlnd php7.4-cli php7.4-soap php7.4-redis php7.4-memcache php7.4-memcached php7.4-imagick php7.4-geoip php7.4-apcu php7.4-bcmath php7.4-zip

Để cài đặt, ta sử dụng lệnh sau:

cài đặt LEMP stack trên Ubuntu 20.04

Kiểm tra kết quả cài đặt:

 cài đặt LEMP stack trên Ubuntu 20.04

Note: Cài thư viện php mcrypt trên ubuntu 20.04: Thư viện php mcrypt phiên bản 7.4 không được cung cấp mặc định qua gói cài đặt. Ta phải cài nó thông qua pear (pecl).

Kiểm tra gói cài bằng lệnh:

 

cài đặt LEMP stack trên Ubuntu 20.04

Cài đặt thư viện php mcrypt bằng lệnh:

Bấm enter tại dấu nhắc:

cài đặt LEMP stack trên Ubuntu 20.04cài đặt LEMP stack trên Ubuntu 20.04

Cấu hình đưa thư viện vào file php.ini:

Khởi động lại php7.4-fpm:

Kiểm tra module được load thành công chưa:

Kết quả: Thành công.

cài đặt LEMP stack trên Ubuntu 20.04

4. Cấu hình php-fpm

Ở bước này ta sẽ cấu hình php-fpm để sử dụng với nginx. Mặc định php-fpm sử dụng unix socket. Tuy nhiên tôi thường sử dụng port 9000 cho dịch vụ này để dễ debug.

các file cấu hình php-fpm7.4 trên Ubuntu 20.04 được lưu tại vị trí sau:

File config chính: /etc/php/7.4/fpm/php-fpm.conf

Sửa file trên bằng trình soạn thảo yêu thích của bạn với nội dung sau:

File config cho các pool: /etc/php/7.4/fpm/pool.d/www.conf

Tạo foler log:

Khởi động lại php-fpm:

5. Cấu hình nginx sử dụng php-fpm

Sửa file /etc/nginx/nginx.conf với cấu hình như sau:

Tạo file /etc/nginx/conf.d/php-fpm.conf

Kiểm tra cấu hình nginx:

Khởi động lại nginx để cập nhật cấu hình mới:

cài đặt LEMP stack trên Ubuntu 20.04

Kiểm tra nginx hoạt động tốt với php chưa:

tạo folder: /home/test/html để chứa file php:

tạo file info.php:

Truy cập vào địa chỉ http://[your_server_ip]/info.php để xem kết quả.

Kiểm tra phpinffo sau khi cài đặt LEMP stack trên Ubuntu 20.04

Note: Nếu không truy cập được và báo timeout, có thể bạn chưa mở port http (80). Bạn phải mở port 80 trên Ubuntu. Lệnh mở port :

6. Cài MySQL trên ubuntu 20.04

Hiện tải có nhiều phiên bản MySql để bạn sử dụng, thông dụng nhất là mariadb có sẵn trên repository của Ubuntu. Kiểm tra như sau:

 

cài đặt LEMP stack trên Ubuntu 20.04

Cài Mariadb-server bằng lệnh:

 

cài đặt LEMP stack trên Ubuntu 20.04

Sau khi cài đặt, mariadb tự động chạy khi khởi động. Bạn kiểm tra trạng thái dịch vụ bằng lệnh:

 

Kiểm tra mariadb đã chạy chưa trong cài đặt LEMP stack trên Ubuntu 20.04

Đặt mật khẩu root cho MySql server.

Mặc định mật khẩu là ký tự rỗng. Để bảo mật ta đặt mật khẩu và xóa test database. Việc này dễ thực hiện bằng công cụ có sẵn sau khi cài:

chạy lệnh sau:

 

cài đặt LEMP stack trên Ubuntu 20.04

Ở bước này ta nhập mật khẩu root,  mặc định là ký tự rỗng nên ta gõ Enter luôn:

cài đặt LEMP stack trên Ubuntu 20.04

Ở bước này Hệ thống hỏi có đặt mật khâu root cho SQL không, bạn chọn Y hoặc bấm Enter (măc định là Y). Nhập mật khẩu root bạn muốn đặt vào. Bạn nên sử dụng mật khẩu có độ MẠNH cao. Ví dụ: Từ 6 ký tự trở lên, bao gồm Chữ Hoa, Chữ Thường, Số và ký tự đặc biệt.

cài đặt LEMP stack trên Ubuntu 20.04

Bước này, Hệ thống hỏi có xóa hết các user khác ngoài root không. Bạn nên chọn xóa hết. => bấm Y và Enter

cài đặt LEMP stack trên Ubuntu 20.04

Bước này hỏi bạn có cho đăng nhập root từ máy khác hay không. Để bảo mật bạn nên chọn Y cấm user root đăng nhập từ remote IP.

cài đặt LEMP stack trên Ubuntu 20.04

Xóa test Database.

cài đặt LEMP stack trên Ubuntu 20.04

Bước  cuối cùng: cập nhật lại quyền trong SQL. Bấm Y và Enter. Vậy là bạn đã hoàn thành bước cài đặt MySQL trên Ubuntu 20.04

Bạn có thể login vào MySQL từ dòng lệnh:

 

Nhập mật khẩu đã tạo ở bước trên.

Mariadb 10.3 - cài đặt LEMP stack trên Ubuntu 20.04

Vậy là MySQL đã được cài đặt thành công và khởi chạy đúng cách.

Tổng kết

Qua các bước trên, toiyeuit.com đã hướng dẫn bạn chi tiết từng bước để cài đặt LEMP stack trên Ubuntu 20.04. Hy vọng bài viêt hữu ích với các bạn. Nếu có thắc mắc hay có bài viết hay bổ xung mời bạn để lại lời nhắn dưới phần bình luận.

Xem thêm: Hướng dẫn cài đặt WordPress trên Centos 7

Chúc các bạn sức khỏe !

 

Related posts

About sysadmin

Check Also

Cách chọn mua ổ cứng SSD

Chọn mua ổ cứng SSD loại nào để tăng tốc máy tính?

Các loại SSD hiện nay rất đa dạng về Nhà sản xuất cũng như củng …