
LEMP là từ viết tắt của Linux Nginx , MariaDB / MySQL và PHP . Nginx là một máy chủ web, MariaDB / MySQL là một ứng dụng quản lý cơ sở dữ liệu, PHP (Hypertext Pre-processor) là một ngôn ngữ lập trình được sử dụng trên phần phụ trợ để xây dựng các ứng dụng web. Tất cả phần mềm mã nguồn mở này tạo nên ngăn xếp LEMP được sử dụng chung để lưu trữ và phục vụ các trang web / ứng dụng trong chu kỳ sản xuất hoặc bất kỳ giai đoạn phát triển nào khác.
Phổ biến, ngăn xếp LEMP được sử dụng để lưu trữ các trang web có khả năng mở rộng cao với lưu lượng truy cập cao. Trong hướng dẫn này, chúng tôi sẽ hướng dẫn một cách hệ thống về cài đặt và cấu hình LEMP Stack trên Rocky Linux 8 / AlmaLinux 8.
Bắt đầu.
Đối với hướng dẫn này, bạn sẽ yêu cầu những điều sau:
- Hệ thống Rocky Linux 8 | AlmaLinux 8.
- Người dùng root (nếu là người dùng khác root có quyền root vui lòng thêm sudo trước mỗi lệnh)
Bắt đầu bằng cách cập nhật tất cả các gói có sẵn trên hệ thống của bạn như bên dưới.
sudo dnf update -y
Bạn có thể lựa chọn phiên bản thành phần (Nginx,MariaDB,PHP) thay vì sử dụng phiên bản mặc định theo hướng dẫn của bài viết này: https://icare24h.net/tuy-chon-phien-ban-nginx-php-mariadb-mac-dinh-khi-cai-dat-lemp-tren-almalinux-va-rockylinux/
Bước 1 – Cài đặt Nginx trên Rocky Linux 8 | AlmaLinux 8.
Máy chủ web mạnh mẽ này tồn tại trong kho lưu trữ Rocky Linux 8 | AlmaLinux 8 mặc định và có thể được cài đặt bằng lệnh bên dưới.
sudo dnf install -y nginx
Sau khi cài đặt, hãy khởi động và cho phép máy chủ web Nginx chạy tự động khi khởi động.
sudo systemctl start nginx
sudo systemctl enable nginx
Cho phép HTTP và HTTPS thông qua tường lửa.
sudo firewall-cmd --permanent --add-service={http,https}
sudo firewall-cmd --reload
Bước 2 – Cài đặt Máy chủ MariaDB trên Rocky Linux 8 | AlmaLinux 8.
MariaDB có thể được cài đặt trên Rocky Linux 8 | AlmaLinux 8 như bên dưới.
sudo dnf -y install @mariadb
Khởi động và kích hoạt MariaDB trên Rocky Linux 8 | AlmaLinux 8.
sudo systemctl enable --now mariadb
Cấu hình cơ bản phiên bản MariaDB như bên dưới.
$ sudo mysql_secure_installation
Enter current password for root (enter for none): Press Enter
....
Set root password? [Y/n] y
New password: Enter Password
Re-enter new password: Re-Enter Password
......
Remove anonymous users? [Y/n] y
...
Disallow root login remotely? [Y/n] y
...
Remove test database and access to it? [Y/n] y
....
Reload privilege tables now? [Y/n] y
.....
Thanks for using MariaDB!
Đăng nhập vào vào MariaDB.
$ mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 16
Server version: 10.3.28-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.000 sec)
MariaDB [(none)]> exit
Bye
Bước 3 – Cài đặt PHP trên Rocky Linux 8 | AlmaLinux 8.
Kho AppStream có nhiều phiên bản PHP có thể được liệt kê bằng cách sử dụng lệnh:
$ sudo dnf module list php
Last metadata expiration check: 0:46:56 ago on Thu 02 Jun 2022 04:34:24 AM +07.
AlmaLinux 8 - AppStream
Name Stream Profiles Summary
php 7.2 [d] common [d], devel, minimal PHP scripting language
php 7.3 common [d], devel, minimal PHP scripting language
php 7.4 common [d], devel, minimal PHP scripting language
php 8.0 [e] common [d], devel, minimal PHP scripting language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Như đã thấy, phiên bản mặc định là PHP 7.2 và có thể được thiết lập sang PHP khác (VD: PHP8.0) như bên dưới.
dnf module reset php
dnf module enable php:8.0
Cài đặt PHP và các thành phần phụ trợ với lệnh dưới:
dnf install -y php php-fpm php-mysqlnd php-opcache php-gd php-xml php-mbstring php-zip
Bước 4 – Tạo VHost Nginx trên Rocky Linux 8 | AlmaLinux 8.
VHost Nginx cho phép một người chạy nhiều trang web bằng cách xác định thư mục gốc của tài liệu trang web. Các thư mục tài liệu gốc này chứa các tệp trang web.
Đối với hướng dẫn này, chúng tôi sẽ tạo một tệp khối máy chủ Nginx bằng cách sử dụng các bước bên dưới (lưu ý bạn cần trỏ A cho root hoặc sub domain về IP của máy chủ):
1. Tạo một thư mục trang web
Đây là bước đầu tiên, đảm bảo rằng bạn thay thế demo.icare24h.net bằng tên miền của mình.
sudo mkdir /var/www/demo.icare24h.net
sudo vim /var/www/demo.icare24h.net/index.html
Trong tệp, hãy thêm nội dung:
<html>
<head>
<title>Welcome to demo.icare24h.net!</title>
</head>
<body>
<h1>Voila! The LEMP server is working perfectly!</h1>
</body>
</html>
2. Tạo VHost Nginx cho trang web
Đây là một tệp cấu hình cho trang web. Nó giải thích cách Nginx sẽ phục vụ các yêu cầu.
sudo vim /etc/nginx/conf.d/demo.icare24h.net.conf
Thêm các dòng dưới đây vào tệp.
server {
listen 80;
listen [::]:80;
server_name demo.icare24h.net www.demo.icare24h.net;
root /var/www/demo.icare24h.net;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
Khởi động lại tất cả dịch vụ cần thiết.
systemctl restart nginx
systemctl restart php-fpm
Bây giờ bạn có thể truy cập vào trang web trên để kiểm tra.
4. Cài đặt phpMyAdmin trên AlmaLinux
phpMyAdmin là một ứng dụng dùng để quản lý cơ sở dữ liệu dưới dạng giao diện. Giúp bạn quản lý Database trực quan hơn. Từ đó dễ dàng kiểm soát và quản lý. Để cài đặt phpMyAdmin trên domain pma.icare24h.net bạn hãy thực hiện như sau (lưu ý bạn cần trỏ A cho pma.icare24h.net về IP của máy chủ):
Kích hoạt EPEL và REMI repository
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
dnf install http://rpms.remirepo.net/enterprise/8/remi/x86_64/php-fedora-autoloader-1.0.0-5.el8.remi.noarch.rpm -y
Cài đặt phpMyAdmin
dnf --enablerepo=remi install phpMyAdmin -y
Tạo vhost
vi /etc/nginx/conf.d/phpmyadmin.conf
Sau đó bạn nhập vào nội dung sau
server {
listen 80;
listen [::]:80;
server_name pma.icare24h.net;
root /usr/share/phpMyAdmin;
index index.php index.html index.htm;
access_log /var/log/nginx/phpmyadmin_access.log;
error_log /var/log/nginx/phpmyadmin_error.log;
location / {
try_files $uri $uri/ /index.php;
}
location ~ ^/(doc|sql|setup)/ {
deny all;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
Khởi động lại dịch vụ
systemctl restart php-fpm
systemctl restart nginx
Truy cập pma.icare24h.net để kiểm tra.
Kết luận
Bàn viết trên đã giúp bạn cài đặt được LEMP Server cơ bản trên AlmaLinux 8 và Rocky Linux 8. Nếu thấy hay đừng quên like share bài viết để ủng hộ icare24h nhé.