Hướng dẫn cài đặt LEMP stack trên Ubuntu 20.04 | Nttworks.vn

Một trang web mới sử dụng WordPress

Bài viết này dành cho những ai muốn và có ý định triển khai một trang web chạy (PHP, Nodejs) trên hệ điều hành VPS Ubuntu ngày 20-18 tháng 4.

Tại sao sử dụng ngăn xếp LEMP?

LEMP sử dụng Nginx, một phần mềm máy chủ web có hiệu suất cao và cân bằng tải tốt khi lượng truy cập nhiều, giúp trang web của bạn chạy ổn định hơn.

LEMP là viết tắt của L (Linux), E (Engine x), M (MySQL / Mariadb), P (PHP) và là một trong những biến thể của máy chủ web. Biến thể ở đây là bạn có thể sửa đổi hoặc xóa các thành phần trên để tạo môi trường hoàn hảo cho dự án của bạn chạy tốt nhất. Ví dụ, chúng tôi có XAMPP. Bạn cài đặt XAMPP trên máy tính Windows của mình, nó bao gồm Apache, MySQL, PHP và X là bộ hệ điều hành hiện được hỗ trợ bởi XAMPP (Linux, Windows, MacOS), là những thành phần đã có sẵn. Khi quá trình cài đặt hoàn tất, bạn chỉ cần nhấn nút “Start” để bật nó lên, nhưng sẽ không có giao diện khi sử dụng VPS hệ điều hành Linux điển hình (chẳng hạn như Ubuntu). Bài viết này sẽ giúp bạn cài đặt PHP hoặc Nodejs trong môi trường máy chủ web của bạn.

Ghi chú: Bài viết này chỉ giúp mọi người cài đặt và chạy mã PHP, mình sẽ không giải thích quá tường tận mọi thành phần của LEMP stack. Nếu bạn muốn tôi viết thêm về chủ đề này, hãy comment để tôi viết tiếp những phần sau.

Trước khi xem tôi, trước tiên bạn có thể đọc và tìm hiểu cách sử dụng các lệnh Linux hoặc Ubuntu cũng như cách sử dụng naneditor hoặc vim.

1: Cập nhật và nâng cấp các gói hiện có và lỗi thời trên hệ thống.

Lệnh trên sẽ giúp bạn cập nhật các gói có sẵn trên hệ thống của bạn với đường dẫn tệp: /etc/apt/sources.list.d -y ở cuối câu lệnh được sử dụng để nhận các gói cần thiết cho việc cập nhật và nâng cấp để xuất.

Ghi chú: Lệnh cập nhật phải được chạy trước lệnh cập nhật. Bởi vì chức năng của bản cập nhật là đồng bộ hóa lại các tệp chỉ mục từ các nguồn mà nó chứa /etc/apt/sources.list.d.

2: Cài đặt Nginx.

Sau khi cập nhật và nâng cấp các gói hệ thống, hãy bắt đầu chạy các lệnh cài đặt Nginx bên dưới.

Ghi chú: Nếu bạn cần nhập lệnh sau khi chạy hệ thống và mật khẩu được nhập trên màn hình lệnh, mật khẩu sẽ không hiển thị ******* bạn chỉ cần nhập nó và nhấn phím enter.

READ  Ruby on Rails là gì? 17 tài liệu học Ruby on Rails mới nhất | Nttworks.vn

Sau khi cài đặt xong, hãy chạy lệnh sau:

Sau khi chạy lệnh, phiên bản hiện tại của nginx đã cài đặt sẽ được hiển thị:

2.1: Cấu hình tường lửa.

Tại sao chúng ta cần cấu hình tường lửa? Định cấu hình tường lửa để bảo mật và cho phép lưu lượng truy cập qua các cổng mặc định trên máy chủ web. Các trang web thường sử dụng hai giao thức, HTTP và HTTPS, tương đương với các cổng 80 và 443 mặc định.

Bạn chạy hai lệnh sau:

Sau khi chạy hai lệnh trên, thông báo sau sẽ hiển thị:

2.2: Khởi động Nginx.

Trước tiên, bạn cần kiểm tra trạng thái hoạt động của Nginx bằng cách chạy lệnh sau:

Nếu màn hình này hiển thị, nginx sẽ không hoạt động:

Chạy lệnh để làm cho Nginx hoạt động sudo systemctl start nginx:

Sau khi chạy lệnh trên, hãy kiểm tra trạng thái của nginx.

Vậy là xong, nginx đã khởi động và chạy.

Sau đó chạy lệnh: sudo systemctl cho phép nginx.

Lệnh này cho phép nginx khởi động hệ thống.

Bây giờ, hãy mở trình duyệt của bạn và nhập: http: // localhost hoặc http: //127.0.01.

3: Cài đặt MySQL.

MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất được sử dụng bởi các trang web lớn và nhỏ.

Làm theo các bước dưới đây để cài đặt MySQL.

Chạy lệnh cài đặt MySQL:

Sau khi cài đặt xong, chúng tôi sẽ khởi chạy tiện ích mysql_secure_installation để định cấu hình bảo mật.

Mysql_secure_installation giúp chúng tôi đặt mật khẩu gốc MySQL, xóa người dùng ẩn danh, vô hiệu hóa mysql từ xa và xóa cơ sở dữ liệu thử nghiệm.

Bạn có thể làm theo cách của riêng bạn hoặc lựa chọn của riêng bạn.

Tiếp theo, đăng nhập vào MySQL bằng người dùng root:

Vì vậy, bạn có quyền truy cập vào MySQL. Thoát MySQL, bạn nhập sự khởi hành; hoặc bỏ cuộc;

Ghi chú: Kể từ phiên bản MySQL 5.7, người dùng gốc MySQL có thể đăng nhập mà không cần sử dụng mật khẩu sau khi cấu hình, như được mô tả ở trên mysql_secure_installation. Tất cả những gì bạn phải làm là chạy lệnh sudo mysql Đăng nhập vào MySQL rất tiện lợi và nhanh chóng. Tuy nhiên, có một vấn đề là khi chúng ta cần kết nối bên ngoài bằng phần mềm quản lý MySQL của bên thứ ba như: Navicat, phpMyAdmin,… thì việc truy cập rất khó khăn. , đặc biệt nếu bạn đang định cấu hình một máy chủ và cần quyền truy cập điều khiển từ xa để quản lý cơ sở dữ liệu.

READ  Tìm hiểu định giá trái phiếu với 3 công thức tính lãi suất cực chuẩnVNDIRECT | Nttworks.vn

Để giải quyết vấn đề này, bạn đang tạo một người dùng mới trên máy chủ với MySQL Remote Access.

Vẫn trên màn hình lệnh máy chủ MySQL, nếu bạn đã đăng xuất, hãy nhập lại sudo mysql.

3.1: Hiển thị người dùng MySQL

Chạy lệnh sau để xác minh người dùng hiện có trong MySQL:

Đây là danh sách người dùng mặc định của mình khi cài MySQL, một số bạn hơi khác một chút nhưng không vấn đề gì cả.

3.2: Tạo người dùng MySQL.

Lệnh tạo người dùng mới trong MySQL:

Giải thích nhân vật % có nghĩa là nhận tất cả các kết nối cục bộ và bên ngoài tới người dùng này.

3.3: Trao quyền cho người dùng.

Tiếp theo, người dùng phải được cấp quyền để thao tác với tất cả cơ sở dữ liệu, thêm, sửa, xóa dữ liệu trong bảng.

Chạy lại FLUSH PRIVILEGES để tải lại và chấp nhận các thay đổi mới.

Kiểm tra danh sách người dùng để xem người dùng mới đã được thêm thành công hay chưa:

Tôi đã thêm một người dùng mới: user_demo1 và khi tôi nhìn vào danh sách người dùng, có user_demo1. Vì vậy, tôi đã thêm thành công.

3.4: Truy cập từ xa vào MySQL.

Khi bạn cài đặt máy chủ MySQL, bạn cần kết nối bên ngoài để quản lý cơ sở dữ liệu nhằm thực hiện các thao tác như thêm, chỉnh sửa và xóa bảng và cột. Tuy nhiên, chúng tôi không thể kết nối với MySQL bây giờ vì tệp cấu hình MySQL được cài đặt theo mặc định mysqld.cnf cấu hình MySQL để thiết lập kết nối cục bộ, kết nối từ bên ngoài user_demo1 Mới tạo không thể kết nối bên ngoài. Vì vậy, bạn cần truy cập vào tệp mysqld.cnf Để chỉnh sửa MySQL để nhận các kết nối bên ngoài.

Bạn chạy lệnh sau:

Tìm dòng địa chỉ ràng buộc, mặc định là bind address = 127.0.0.1 bạn nhé, hoặc đổi địa chỉ IP thành 127.0.0.1 = 0.0.0.0 để lấy tất cả các kết nối từ local ra ngoài. Nếu tệp mysqld.cnf của bạn không có địa chỉ ràng buộc, hãy tự thêm địa chỉ đó. Sau đó nhấn Ctrl + X, Y, Enter với nano để lưu thay đổi.

Sau đó khởi động lại MySQL để chấp nhận các thay đổi mới.

Sau đó sử dụng Navicat hoặc phpMyAdmin để kết nối với máy chủ MySQL.

Ghi chú: khi bạn nhập trường máy chủ lưu trữ, nếu trên máy tính để bàn, là localhost hoặc 127.0.0.1 nếu là VPS, nó sẽ điều chỉnh IP của VPS, ví dụ: 34.231.411.22.

READ  Ý nghĩa các chức danh CEO, CFO, CMO, CLO, CCO, COO là gì? | Nttworks.vn

4: Cài đặt PHP.

Trong hướng dẫn này, tôi sẽ cài đặt phiên bản PHP8.0.

Bạn chạy lệnh sau:

Cài đặt các gói bổ sung cần thiết để chạy dự án PHP.

Sau khi cài đặt xong, hãy chạy php8.0-fpm.

Cho phép bạn làm việc trên cùng một hệ thống.

Kiểm tra xem php-fpm có hoạt động không.

5: Định cấu hình PHP-FPM.

Theo mặc định, Nginx không thể đọc các tệp mã kết thúc bằng .php. Vì vậy, nếu bạn muốn Nginx đọc các tệp có phần mở rộng .php, bạn cần định cấu hình php-fpm để giao tiếp với Nginx. PHP-FPM có nhiệm vụ dịch các tập tin mã php sang html để Nginx có thể hiểu và hiển thị ra bên ngoài giao diện trang web. Và trong hướng dẫn này, tôi cấu hình PHP-FPM theo giao thức ổ cắm TCP.IP.

Mở tệp cấu hình tại /etc/php/8.0/fpm/pool.d/www.conf.

Bạn sẽ tìm thấy dòng “nghe = /run/php/php8.0-fpm-sock”.

Thêm dòng “nghe = 0.0.0.0:9000” bên dưới.

Tiếp theo, nhấn tổ hợp phím Ctrl + w và gõ pong. Vui lòng xóa nhãn ; trước dòng

; ping.responese = pong

; ping.path = / ping và lưu lại.

Khởi động lại PHP-FPM để cấu hình có hiệu lực.

Để kiểm tra kết nối giữa PHP-FPM và Nginx, hãy sử dụng lệnh sau:

“SCRIPT_NAME = / ping SCRIPT_FILENAME = / ping REQUEST_METHOD = NHẬN cgi-fcgi -bind – kết nối 0.0.0.0:9000”

Đây là cách PHP-FPM và Nginx được kết nối.

6: Tạo khối máy chủ Nginx.

Đầu tiên, bạn cần sao lưu tập tin cấu hình Nginx gốc để phòng trường hợp cần sử dụng bất cứ thứ gì.

Vì chúng tôi không sử dụng tệp Nginx gốc để cấu hình, chúng tôi sẽ xóa nó.

Bạn sẽ tạo một tệp mới và sao chép mã cấu hình của bạn bên dưới.

Bạn có thể tìm thấy tệp cấu hình Nginx của mình tại đây: nginx.conf.

Thiết lập nó như sau:

Lưu ý: phần root / var / www là đường dẫn đến thư mục chứa tệp mã.

Lưu nó và chạy lệnh:

Kiểm tra xem cấu hình Nginx có đúng không:

Như hình dưới đây, cấu hình thành công không có lỗi.

Tiếp theo, khởi động lại Nginx để có cấu hình mới:

Tạo tệp info.php để xác minh rằng Nginx có thể chạy tệp php.

Dán mã này và lưu nó:

Bây giờ gõ server-ip-address / info.php vào thanh địa chỉ của trình duyệt, ví dụ localhost / info.php, server: 34.324.123.11/info.php

Kết quả là như sau:

Vậy là tôi đã hướng dẫn bạn cách cài đặt và cấu hình để bắt đầu ngăn xếp đèn. Nếu có vướng mắc các bạn có thể comment bên dưới hoặc tham gia nhóm https://www.facebook.com/groups/backendfpolyhn để trao đổi và chia sẻ kiến ​​thức.

Sự thành công.

Trả lời

Email của bạn sẽ không được hiển thị công khai.

Protected with IP Blacklist CloudIP Blacklist Cloud