Trong hướng dẫn này, bạn sẽ thấy các bước cần thực hiện để cài đặt và định cấu hình LEMP trên Debian 12. Nginx, MariaDB và PHP là các gói phần mềm cần thiết để lưu trữ web hiệu suất cao, cho dù đó là trang web demo, blog hay cửa hàng trực tuyến.
LEMP là viết tắt của Linux, Nginx, MySQL/MariaDB, PHP và là nền tảng cho nhiều dự án web và ứng dụng web trên khắp thế giới. Nếu không, bạn sẽ không thể xem được bài viết này nếu phía sau stealthsettings.com sẽ không chứa tất cả các gói này để đảm bảo hoạt động trực tuyến của trang web của chúng tôi.
Debian là một hệ điều hành mã nguồn mở dựa trên Linux, nổi tiếng về tính ổn định, bảo mật và tính linh hoạt. Với lịch sử lâu đời và cộng đồng nhà phát triển năng động, Debian cung cấp nhiều gói phần mềm và thư viện đa dạng để đáp ứng nhu cầu đa dạng của người dùng. Hệ điều hành này thường được sử dụng để tạo ra các máy chủ đáng tin cậy và hiệu quả cho các công ty, nhưng nó cũng có thể được điều chỉnh cho mục đích sử dụng cá nhân.
Nội dung
Cách cài đặt và cấu hình LEMP trên Debian 12
Bước đầu tiên trước khi cài đặt và định cấu hình LEMP trên Debian 12, là kết nối với máy chủ qua SSH (hoặc trực tiếp từ bảng điều khiển nếu bạn có quyền truy cập cục bộ). Đảm bảo rằng không có gói nào được cài đặt trên máy chủ từ LEMP hoặc các hệ thống quản trị như: cPanel, VestaCP hoặc những người khác.
Tập lệnh trong hướng dẫn này bắt đầu bằng “sudo
", nhưng nếu bạn kết nối với máy chủ bằng người dùng "root
", nó không phải là cần thiết "sudo
” ở phía trước dòng lệnh. Đặt hàng "sudo
” được sử dụng trước các dòng lệnh để tạm thời cấp quyền siêu người dùng cho người dùng thông thường, cho phép họ thực thi các lệnh yêu cầu đặc quyền hoặc quyền truy cập vào các tài nguyên được bảo vệ, chẳng hạn như cài đặt hoặc định cấu hình phần mềm, quản trị hệ thống hoặc thực hiện các hoạt động nhạy cảm khác.
Update Phần mềm.
Trước khi bắt đầu cài đặt LAMP, bạn nên cập nhật cả hệ điều hành và các gói phần mềm đã được cài đặt.
sudo apt update
sudo apt upgrade
Nếu có sẵn các gói dành cho update, nhấn "Y
" khi được hỏi:
Do you want to continue? [Y/n] Y
Cài đặt và định cấu hình máy chủ web Nginx trên Debian 12
Để máy chủ web phục vụ các trang web cho khách truy cập, Nginx Web Server nó phải được cài đặt và cấu hình đúng cách.
sudo apt install nginx
Kiểu "Y
” để xác nhận việc cài đặt Nginx Web Server.
Do you want to continue? [Y/n] Y
Các dòng ở cuối quá trình cài đặt sẽ có dạng như sau:
Setting up nginx-common (1.22.1-9) ...
Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /lib/systemd/system/nginx.service.
Setting up nginx (1.22.1-9) ...
Upgrading binary: nginx.
Processing triggers for man-db (2.11.2-2) ...
Cuối cùng, để đảm bảo mọi thứ hoạt động chính xác, hãy truy cập địa chỉ IP trong một trình duyệt web. http://your_server_ip
.
Dịch vụ Nginx đang hoạt động trên máy chủ của bạn và sẵn sàng phục vụ các trang web.
Liên quan:
Cài đặt và cấu hình MariaDB Server trên Debian 12
MariaDB cung cấp hiệu suất được cải thiện, tốc độ sao chép nhanh hơn, các biện pháp bảo mật tăng cường và các công cụ lưu trữ bổ sung so với MySQL.
Chạy dòng lệnh bên dưới và gõ “Y
” để xác nhận cài đặt MariaDB Server.
sudo apt install mariadb-server
Sau khi cài đặt, bạn cần bảo mật MariaDB Server bằng cách chạy tập lệnh: mysql_secure_installation
. Nó sẽ hạn chế quyền truy cập vào máy chủ và xóa các tài khoản không sử dụng.
Chạy dòng lệnh:
sudo mysql_secure_installation
Nhấn "Enter
" cho mật khẩu người dùng hiện tại "root
".
Switch to unix_socket authentication [Y/n] Y
Đặt mật khẩu cho MariaDB:
Change the root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
Tiếp theo bạn sẽ xóa các đặc quyền và cơ sở dữ liệu được thiết lập mặc định trong quá trình cài đặt MariaDB Server.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Mật khẩu được đặt ở trên cho tài khoản “root
” là bắt buộc khi đăng nhập vào máy chủ từ xa. Xa. Đây là mật khẩu cho MariaDB.
Kiểm tra cài đặt SQL Server của bạn.
root@mars:~# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 41
Server version: 10.11.3-MariaDB-1 Debian 12
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)]> select version();
+-------------------+
| version() |
+-------------------+
| 10.11.3-MariaDB-1 |
+-------------------+
1 row in set (0.000 sec)
MariaDB [(none)]> quit
Bye
root@mars:~#
Cài đặt và cấu hình PHP/PHP-FPM trên Debian 12
Nếu mọi thứ đều hoạt động tốt cho đến bước này, để cài đặt và định cấu hình LEMP trên Debian 12, bạn cũng cần có phần mềm PHP. Để được hỗ trợ PHP trong Nginx, bạn cũng cần cài đặt PHP-FPM.
sudo apt install php-fpm php-mysql php-gd php-cli php-curl php-mbstring php-zip php-opcache php-xml
Đợi quá trình cài đặt hoàn tất PHP-FPM, cùng với các mô-đun PHP quan trọng nhất.
Cuối cùng, trong hướng dẫn của mình, tôi đã có thể cài đặt PHP 8.2 trên hệ điều hành Debian 12.
root@mars:~# php -v
PHP 8.2.7 (cli) (built: Jun 9 2023 19:37:27) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
root@mars:~#
Tại thời điểm này, tất cả các thành phần của LEMP đã được cài đặt nhưng vẫn còn một số cấu hình cần thực hiện Nginx để thực thi các tập tin PHP.
Định cấu hình NGINX để thực thi các tệp PHP
Để định cấu hình Nginx cho trang “mặc định”, hãy chỉnh sửa “/etc/nginx/sites-enabled/default
“. Tôi thích "nano
” để chỉnh sửa.
Thay thế vào “location /
" dòng:
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
Với dòng:
location / {
try_files $uri $uri/ /index.php?$args;
}
Tiếp theo, thêm các dòng bên dưới vào khối “server
” để cho phép Nginx xử lý PHP.
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php-fpm.sock;
}
}
Lưu file và kiểm tra cấu hình:
root@mars:~# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
root@mars:~#
Nếu kiểm tra cấu hình thành công, hãy khởi động lại dịch vụ nginx
.
sudo systemctl restart nginx
Kiểm tra xem bạn đã cài đặt và cấu hình LEMP thành công trên Debian 12 chưa
Sau khi bạn đã cài đặt và định cấu hình Nginx, MariaDB và PHP trên Debian 12 (LEMP), đã đến lúc kiểm tra xem mọi thứ có hoạt động không. Để kiểm tra, đơn giản nhất là tạo file info.php.
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
Truy cập trong trình duyệt "https://your_server_ip/info.php
".
Trang PHP có nghĩa là bạn đã cài đặt thành công LEMP cho Debian 12.
Xin chúc mừng!