Cài đặt LEMP stack trên Almalinux 8

Mở đầu

LEMP là một trong những stack phổ biến hiện nay, nó bao gồm tập hợp những chương trình mã nguồn mở sử dụng cho mục đích lưu trữ và vận hành các ứng dụng web. Thuật ngữ LEMP là từ viết tắt của Linux, Nginx, MariaDB/MySQL và PHP.

Tiếp tục trong serie AlmaLinux, hôm nay mình sẽ gửi đến bạn hướng dẫn cài đặt LEMP Stack trên nền tảng AlmaLinux 8.4

Triển khai LEMP Stack

Bước 1: Cài đặt Nginx web server

Rất may mắn, trong kho lưu trữ AlmaLinux 8 – Appstream đã cung cấp sẵn các phiên bản từ nginx 1.4 nên bạn không phải cài đặt thêm repository.

1. Để xem danh sách các module nginx sẵn có trong kho lưu trữ, bạn thực thi lệnh bên dưới:

# dnf module list nginx

2. Bạn cần sử dụng lệnh sau để kích hoạt module phiên bản nginx trước khi cài đặt:

# dnf module enable nginx:1.18

Lưu ýBạn có thể thay thế 1.18 ở lệnh trên bằng những phiên bản khác như 7.14 (mặc định) hoặc 1.16

3. Tới đây, bạn tiến hành cài đặt nginx bằng lệnh sau:

# dnf install nginx -y

4. Sau khi quá trình cài đặt nginx server hoàn tất, bạn khởi động Nginx, kích hoạt Nginx (tự động khởi động khi hệ thống reboot) và kiểm tra trạng thái Nginx bằng những tập lệnh bên dưới.

# systemctl start nginx
# systemctl status nginx

5. Cấu hình tường lửa (Firewalld) chấp nhận các HTTP và HTTPS request trên web server bằng những tập lệnh dưới đây.

# firewall-cmd --permanent --zone=public --add-service=http 
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --reload

6. Để kiểm tra lại trạng thái đang hoạt động của Nginx server, mở trình duyệt và truy cập URL: http://IP-server.

 

Document root mặc định của nginx trong thư mục /usr/share/nginx/html.

Bước 2: Cài đặt PHP 7.x

7. Ở bài viết trước, mình đã hướng dẫn chi tiết cách thức cài đặt các phiên bản PHP 7.x trên CentOS 7, bạn có thể tham khảo lại tại bài viết PHP 7.x

8. Mở file cấu hình Nginx mặc định /etc/nginx/nginx.conf  bằng lệnh sau

# vi /etc/nginx/nginx.conf

Để Nginx server có thể xử lý được các file kịch bản PHP (fastcgi script), bạn cần tìm đến giá trị location trong server block và thêm những dòng như bên dưới.

location / {
index index.php index.html;
}

location ~ \.php$ {
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param  PATH_INFO $fastcgi_path_info;
    include        fastcgi_params;
}

9. Để xem toàn bộ thông tin về phiên bản PHP đang được cài đặt trên hệ thống, bạn tạo file info.php trong Nginx Document root, khởi động lại nginx service và php-fpm và mở trình duyệt truy cập theo URL:

http://IP-server/info.php

# echo "<?php phpinfo();?>" > /usr/share/html/info.php 
# systemctl restart nginx 
# systemctl restart php-fpm

Bước 3: Cài đặt và cấu hình MariaDB Database

10.Tương tự như trên, để xem danh sách các module nginx sẵn có trong kho lưu trữ, bạn thực thi lệnh bên dưới:

# dnf module list mariadb

11. Ở đây mình cài đặt phiên bản MariaDB mặc định nên chỉ cần thực thi lệnh bên dưới để cài đặt:

# dnf install mariadb-server mariadb

12. Sau khi quá trình cài đặt MariaDB package hoàn thành, bạn thực hiện khởi động database service và chạy script mysql_secure_installation để cấu hình bảo mật cho MariaDB (bao gồm root password, tắt remote database với user root, xóa database test và xóa users ẩn danh).

# systemctl start mariadb
# mysql_secure_installation

 

12. Để kiểm tra lại hoạt động database server, bạn đăng nhập vào MariaDB bằng tài khoản root.

# mysql -u root -p

 

Bước 4: Bật chế độ chạy nền cho LEMP Stack

13. Nếu bạn cần cấu hình Nginx PHP-FPM và MariaDB services tự động khởi động sau khi reboot server, có thể sử dụng lệnh bên dưới:

# systemctl enable mariadb
# systemctl enable nginx 
# systemctl enable php-fpm

Lời kết

Như vậy là mình đã hoàn thành bài viết hướng dẫn cài đặt Lemp Stack trên nền tảng AlmaLinux 8. Nếu có bất kỳ thắc mắc hoặc góp ý về nội dung bài viết, các bạn có thể để lại phản hồi ngay bên dưới.

Mình sẽ tiếp tục gửi đến bạn hướng dẫn triển khai Lamp Stack lên AlmaLinux 8.4 trong bài viết sau. Mọi người nhớ theo dõi nhé.

Chúc các bạn thành công!

Giới thiệu Hiệp Phạm 113 bài viết
Hiệp hiện đang là thành viên nhóm tác giả của HIEPSHARING.COM. Thích tìm hiểu, nghiên cứu Ethical Hacking, SysAdmin, DevOps và những công nghệ mới. Phương châm sống của mình: "Chỉ cần bản thân không bỏ cuộc, chậm chút cũng không sao."

Hãy bình luận đầu tiên

Để lại một phản hồi

Thư điện tử của bạn sẽ không được hiện thị công khai.


*