Cài đặt LEMP trên Ubuntu 20
1. Bước 1: Cập nhật Software Packages
Trước khi bắt đầu cài đặt LEMP, bạn nên cập nhật các gói phần mềm và kho lưu trữ bằng cách chạy các lệnh sau:
sudo apt update
sudo apt upgrade -y
2. Bước 2: Cài đặt Nginx
Nginx là một máy chủ web có hiệu suất cao và rất phổ biến ngày nay. Nó cũng có thể được sử dụng như một proxy ngược và caching server. Để cài đặt Nginx hãy xem hướng dẫn cài đặt Nginx trên Ubuntu 20.
3. Bước 3: Cài đặt MariaDB
MariaDB là một phần mềm thay thế cho MySQL. Nó được phát triển bởi các thành viên cũ của nhóm MySQL, những người lo ngại rằng Oracle có thể biến MySQL thành một sản phẩm mã nguồn đóng. Để cài đặt MariaDB hãy xem hướng dẫn cài đặt MariaDB trên Ubuntu 20.
4. Bước 4: Cài đặt PHP
Tại thời điểm viết bài này, PHP7.4 là phiên bản ổn định mới nhất của PHP. Để cài đặt PHP7.4 và một số module PHP phổ biến hãy các chạy lệnh sau.
sudo add-apt-repository ppa:ondrej/php -y
sudo apt install -y php7.4 php7.4-fpm php7.4-mysql php7.4-curl php7.4-json php7.4-cgi php7.4-xsl php7.4-mbstring php7.4-opcache php7.4-gd php7.4-pgsql php7.4-intl php7.4-bcmath php7.4-soap
Sau khi quá trình cài đặt hoàn tất hãy khởi động php7.4-fpm.
sudo systemctl start php7.4-fpm
Cho phép php-fpm khởi động cùng hệ thống.
sudo systemctl enable php7.4-fpm
Kiểm tra trạng thái của php-fpm:
systemctl status php7.4-fpm
5. Bước 5: Cấu hình PHP-FPM
Đầu tiên các bạn backup lại file cấu hình mặc định
sudo cp /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/fpm/pool.d/www.conf.bak
Tiếp theo các bạn mở file /etc/php/7.4/fpm/pool.d/www.conf
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
Sửa lại các thông số sau
user = www-data sửa thành user = nginx
group = www-data sửa thành group = nginx
listen.owner = www-data sửa thành listen.owner = nginx
listen.group = www-data sửa thành listen.group = nginx
;listen.mode = 0660 sửa thành listen.mode = 0660
Khởi động lại php-fpm để cấu hình có hiệu lực
sudo systemctl restart php7.4-fpm
6. Bước 6: Tạo Nginx Server Block
Nginx Server Block giống như Virtual Host trong Apache. HOSTVN sẽ không sử dụng Server Block mặc định vì nó không có cấu hình để chạy PHP, vì vậy hãy loại bỏ Server Block mặc định bằng lệnh sau:
sudo rm /etc/nginx/conf.d/default.conf
Sau đó, sử dụng trình soạn thảo Nano để tạo tệp Server Block hoàn toàn mới trong thư mục /etc/nginx/conf.d/.
sudo nano /etc/nginx/conf.d/default.conf
Dán đoạn cấu hình sau vào tập tin. Đoạn mã sau sẽ cấu hình Nginx lắng nghe trên cổng IPv4 80 và IPv6 cổng 80.
server {
listen 80;
listen [::]:80;
server_name _;
root /usr/share/nginx/html/;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php;
}
location ~ .php$ {
try_files $uri $uri/ =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_intercept_errors on;
if (-f $request_filename)
{
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
}
}
# A long browser cache lifetime can speed up repeat visits to your page
location ~* .(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
access_log off;
log_not_found off;
expires 360d;
}
# disable access to hidden files
location ~ /.ht {
access_log off;
log_not_found off;
deny all;
}
}
Lưu và đóng tập tin. (Để lưu tệp trong trình soạn thảo văn bản Nano, nhấn Ctrl + O, sau đó nhấn Enter để xác nhận. Để thoát, nhấn Ctrl + X.). Sau đó kiểm tra cấu hình Nginx.
sudo nginx -t
Nếu không có bất kỳ lỗi nào hãy reload lại Nginx.
sudo systemctl reload nginx
7. Bước 7: Kiểm tra PHP
Để kiểm tra PHP-FPM với máy chủ Nginx, chúng ta cần tạo một tệp info.php trong thư mục webroot.
sudo nano /usr/share/nginx/html/info.php
Dán mã PHP sau vào tệp.
<?php phpinfo(); ?>
Bây giờ trong thanh địa chỉ của trình duyệt, nhập server-ip-address/info.php. Thay thế địa chỉ server-ip-address bằng IP thực tế của bạn. Nếu bạn làm theo hướng dẫn này trên máy tính của mình, hãy nhập 127.0.0.1/info.php hoặc localhost/info.php.
Chúc mừng! Bạn đã cài đặt thành công Nginx, MariaDB và PHP7.4 trên Ubuntu 20.04. Để bảo mật máy chủ của bạn, bạn nên xóa tệp info.php để ngăn chặn tin tặc nhìn thấy nó.
sudo rm /usr/share/nginx/html/info.php
8. Xử lý sự cố
Nếu bạn gặp lỗi, bạn có thể kiểm tra nhật ký lỗi của Nginx (/var/log/nginx/error.log) để tìm lỗi và có phương án khắc phục.
9. Link tham khảo
Nguồn bài viết: https://blog.hostvn.net/chia-se/huong-dan-cai-dat-lemp-tren-ubuntu-20.html