Hướng dẫn cài đặt nginx php pthreadtrên ubuntu năm 2024

Cài đặt LEMP trên Ubuntu 22 – LEMP là viết tắt của Linux, Nginx (Engine-X), MariaDB/MySQL và PHP, tất cả đều là phần mềm miễn phí. Đây là những phần mềm phổ biến nhất cung cấp môi trường hoạt động cho các trang web.

Trong bài viết này Nhân Hòa sẽ hướng dẫn các bạn cài đặt LEMP trên Ubuntu 22.04 với PHP 8.1.

1. Cài đặt Nginx

Cài đặt Nginx:

apt update apt -y install nginx

Trên Ubuntu 22.04, Nginx được cấu hình bắt đầu chạy khi cài đặt.

Nếu tường lửa ufw đang chạy, thì bạn cần phải cho phép kết nối với Nginx. Nginx tự đăng ký với ufw khi cài đặt. Do đó việc thực hiện trở nên đơn giản hơn.

Cho phép lưu lượng truy cập trên cổng 80.

ufw allow 'Nginx HTTP'

Kiểm tra phiên bản nginx:

nginx -v nginx version: nginx/1.18.10 (Ubuntu)

Truy cập IP máy chủ trên trình duyệt ta sẽ thấy như sau:

Hướng dẫn cài đặt nginx php pthreadtrên ubuntu năm 2024

2. Cài đặt hệ quản trị cơ sở dữ liệu

Trên thực tế với LEMP, bạn có thể sử dụng

nginx -v nginx version: nginx/1.18.10 (Ubuntu)

2 hoặc

nginx -v nginx version: nginx/1.18.10 (Ubuntu)

3 đều được, bài này mình sẽ hướng dẫn với

nginx -v nginx version: nginx/1.18.10 (Ubuntu)

3.

Trước khi cài đặt, ta sẽ gỡ phiên bản hiện tại của MariaDB trên máy để cài đặt mới.

Gỡ MariaDB hiện tại trên Ubuntu:

apt-get remove mariadb-server

Cài đặt mới MariaDB

apt -y install mariadb-server

Dịch vụ MariaDB sẽ tự động khởi chạy. Kiểm tra trạng thái:

systemctl status mariadb

Kiểm tra version của MariaDB:

mariadb -V mariadb Ver 15.1 Distrib 10.6.12-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper

Cài đặt một số thông tin ban đầu:

mysql_secure_installation

  • Cài lại mật khẩu cho quyền root của cơ sở dữ liệu: nginx -v nginx version: nginx/1.18.10 (Ubuntu) 5
  • Bước này yêu cầu bạn nhập mật khẩu gần đây cho nginx -v nginx version: nginx/1.18.10 (Ubuntu)

    6. Nếu bạn mới cài lần đầu thì nhấn Enter để tiếp tục.

    nginx -v nginx version: nginx/1.18.10 (Ubuntu) 7
  • Nếu bạn cài lần đầu, hệ thống sẽ hỏi bạn muốn cài password cho quyền nginx -v nginx version: nginx/1.18.10 (Ubuntu)

    6 không. Bạn gõ

    nginx -v nginx version: nginx/1.18.10 (Ubuntu) 9 -> Enter, sau đó nhập mật khẩu và xác thực mật khẩu.
  • Với những máy mới cài mariadb lần đầu, hệ thống yêu cầu thêm một số thiết lập như sau:
    • Xoá bỏ các user khác.
    • Không cho phép root đăng nhập từ xa.
    • Xoá bỏ databases test.
    • Khởi chạy lại bảng Privilege (bảng phân quyền).
  • Bạn chỉ cần gõ nginx -v nginx version: nginx/1.18.10 (Ubuntu) 9 cho những yêu cầu đó.

3. Cài đặt PHP

Không giống với Apache, Nginx không tích hợp hỗ trợ xử lý các tệp PHP. Vì vậy, ta cài đặt một ứng dụng riêng biệt để xử lý các tệp PHP. Chẳng hạn như PHP FPM (

apt-get remove mariadb-server

1)

Cài đặt module

apt-get remove mariadb-server

2 và

apt-get remove mariadb-server

3

sudo apt install php8.1-fpm php-mysql

Kiểm tra phiên bản php

php -v

Ta sẽ thấy phiên bản php sau khi cài là 8.1.2

Bây giờ ta đã cài đặt đủ các thành phần của LEMP stack. Nhưng vẫn cần phải thực hiện một số thay đổi về cấu hình để yêu cầu Nginx sử dụng PHP để xử lý nội dung.

Mở thư mục:

apt-get remove mariadb-server

4. Trong ví dụ này, tên máy chủ được đặt là

apt-get remove mariadb-server

5 (Bạn có thể đặt bất kì tên bạn muốn). Tạo file

apt-get remove mariadb-server

5

ufw allow 'Nginx HTTP'

0

Thêm nội dung sau:

ufw allow 'Nginx HTTP'

1

Trong đó:

  • apt-get remove mariadb-server

    7 : Xác định cổng Nginx lắng nghe. Trong trường hợp này là cổng 80 (mặc định của HTTP)
  • nginx -v nginx version: nginx/1.18.10 (Ubuntu) 6 : Xác định gốc lưu trữ các tệp của trang web
  • apt-get remove mariadb-server

    9 : thứ tự ưu tiên các file cấu hình, nếu chúng tồn tại
  • apt -y install mariadb-server

    0 : Xác định khối máy chủ nào được sử dụng. Nó trỏ đến tên miền hoặc IP public của bạn
  • apt -y install mariadb-server

    1 : Kiểm tra sự tồn tại của các tệp khớp với

    apt -y install mariadb-server

    2. Nếu nginx không thể tìm thấy tệp thích hợp, nó sẽ trả về 404
  • apt -y install mariadb-server

    3 : Khai báo nơi xử lý PHP bằng cách trỏ Nginx vào tệp cấu hình

    apt -y install mariadb-server

    4 và tệp

    apt -y install mariadb-server

    5
  • apt -y install mariadb-server

    6 : Xử lí các tệp

    apt -y install mariadb-server

    7 mà Nginx không xử lí. Bằng cách

    apt -y install mariadb-server

    8 chỉ thị, nếu bất kì tệp

    apt -y install mariadb-server

    7 xảy ra để tìm đường vào tài liệu gốc thì chúng sẽ không được phục vụ cho khách truy cập.

Tạo liên kết tượng trưng từ file cấu hình server ở trên (trong thư mục

apt-get remove mariadb-server

  1. tới thư mục

systemctl status mariadb

1

ufw allow 'Nginx HTTP'

2

Hủy liên kết file cấu hình mặc định khỏi thư mục

systemctl status mariadb

2:

ufw allow 'Nginx HTTP'

3

Lưu ý: Nếu bạn cần khôi phục cấu hình mặc định, bạn có thể tạo liên kết lại với file mặc định:

ufw allow 'Nginx HTTP'

4

Kiểm tra xem file cấu hình mới có lỗi gì không:

ufw allow 'Nginx HTTP'

5

  • Nếu không có lỗi gì sẽ có thông báo tương tự như sau

ufw allow 'Nginx HTTP'

6

  • Nếu có lỗi thì sẽ có thông báo lỗi

Reload Nginx:

ufw allow 'Nginx HTTP'

7

Tạo file

systemctl status mariadb

3

ufw allow 'Nginx HTTP'

8

Thêm vào nội dung sau:

ufw allow 'Nginx HTTP'

9

Dùng trình duyệt gõ vào thanh URL

nginx -v nginx version: nginx/1.18.10 (Ubuntu)

0

Khi xuất hiện màn hình tương tự như hình có nghĩa là đã cài PHP thành công.

Hướng dẫn cài đặt nginx php pthreadtrên ubuntu năm 2024

Sau khi cài đặt xong, bạn nên xóa file

systemctl status mariadb

4, vì nó có thể cho người dùng trái phép một số gợi ý về cấu hình của trang web và giúp họ cố gắng đột nhập.

nginx -v nginx version: nginx/1.18.10 (Ubuntu)

1

Kết luận

Như vậy Cloud365 đã hướng dẫn xong cho bạn cách cài đặt LEMP stack trên hệ điều hành Ubuntu 22.04 với PHP 8.1