Cách cài đặt phần mềm thương mại điện tử Magento trên Ubuntu 22.04

Tác giả sysadmin, T.Tám 14, 2023, 01:21:10 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách cài đặt phần mềm thương mại điện tử Magento trên Ubuntu 22.04


Magento là một nền tảng thương mại điện tử mã nguồn mở và nổi tiếng được viết bằng PHP. Magento là một giải pháp Thương mại điện tử mạnh mẽ và mạnh mẽ được sử dụng bởi hơn 240.000 thương nhân trên toàn thế giới. Ban đầu, Magento được tạo ra như một nhánh của osCommerce vào năm 2007 và vào tháng 5 năm 2018, Magento được Adobe Inc mua lại và trở thành Adobe eCommerce.


Magento là một nền tảng linh hoạt và có thể mở rộng để xây dựng một cửa hàng Thương mại Điện tử. Nó phù hợp để xây dựng các cửa hàng trực tuyến nhỏ, vừa và lớn. Magento cho phép bạn tạo và lưu trữ các cửa hàng trực tuyến trên máy chủ của mình. Bạn có thể thiết lập các cửa hàng trực tuyến mà không cần bất kỳ kiến thức lập trình nào, nó hỗ trợ doanh nghiệp của bạn và đưa doanh nghiệp của bạn lên một tầm cao mới.

Trong hướng dẫn này, bạn sẽ cài đặt Magento eCommerce trên Ubuntu 22.04. Bạn sẽ cài đặt và định cấu hình các phụ thuộc Magento như Elaticsearch, Redis, PHP-FPM với máy chủ web Nginx, Máy chủ MySQL và Trình soạn thảo. Bạn cũng sẽ bảo mật cài đặt Thương mại điện tử Magento bằng chứng chỉ SSL từ Letsencrypt.

1. Điều kiện tiên quyết

Để hoàn thành và làm theo hướng dẫn này, bạn sẽ cần một số điều kiện tiên quyết được liệt kê bên dưới:

  • Máy chủ Ubuntu 22.04 – Ví dụ này sử dụng máy chủ Ubuntu có tên máy chủ ' magento-server ' và địa chỉ IP ' 192.168.5.100 '.
  • Người dùng không phải root có đặc quyền quản trị viên sudo/root.
  • Một tên miền được trỏ đến địa chỉ IP của máy chủ – Ví dụ này sử dụng tên miền 'hwdomain.io' để cài đặt Magento Thương mại điện tử.

Ngoài ra, nếu bạn dự định cài đặt Magento trên sản phẩm của mình, hãy đảm bảo rằng bạn có một máy chủ có nhiều tài nguyên CPU, bộ nhớ và ổ đĩa. Thử nghiệm cài đặt Magento Thương mại điện tử này đã sử dụng 6GB bộ nhớ.

2. Chuẩn bị hệ thống

Trước khi bắt đầu cài đặt Magento, bây giờ bạn sẽ chuẩn bị hệ thống Ubuntu của mình bằng cách cập nhật các kho lưu trữ, nâng cấp các gói, sau đó cài đặt một số gói cơ bản.

Chạy lệnh apt bên dưới để cập nhật và làm mới kho Ubuntu. Sau đó, nâng cấp các gói lên phiên bản mới nhất.

Mã nguồn [Chọn]
sudo apt update
sudo apt upgrade

Tiếp theo, cài đặt một số phụ thuộc cơ bản thông qua lệnh apt bên dưới.

Mã nguồn [Chọn]
sudo apt install gnupg2 apt-transport-https curl wget
Khi được nhắc, hãy nhập y để xác nhận và nhấn ENTER để tiếp tục.


Với các phụ thuộc cơ bản được cài đặt, sau đó bạn sẽ bắt đầu cài đặt các gói phụ thuộc cho Thương mại điện tử Magento.

3. Cài đặt và định cấu hình Elaticsearch 7.x

Phụ thuộc đầu tiên mà bạn sẽ cài đặt là Elaticsearch. Thương mại điện tử Magento hiện đại yêu cầu một công cụ tìm kiếm cung cấp kết quả tìm kiếm thời gian thực hiệu quả cho khách hàng. Magento hỗ trợ công cụ tìm kiếm Elaticsearch và OpenSearch.

Trong bước này, bạn sẽ cài đặt và cài đặt Elaticsearch 7.x trên máy chủ Ubuntu 22.04. Phiên bản Magento mới nhất yêu cầu phiên bản Elaticsearch cụ thể 7.x.

Để bắt đầu, hãy chạy lệnh bên dưới để thêm khóa GPG và kho lưu trữ Elaticsearch vào hệ thống của bạn

Mã nguồn [Chọn]
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch \ |
sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg

Mã nguồn [Chọn]
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" \ |
sudo tee /etc/apt/sources.list.d/elastic-7.x.list

Sau khi kho lưu trữ được thêm vào, hãy chạy lệnh apt bên dưới để cập nhật và làm mới chỉ mục gói Ubuntu của bạn.

Mã nguồn [Chọn]
sudo apt update
Bạn sẽ thấy kho lưu trữ Elaticsearch được thêm vào hệ thống Ubuntu của mình.


Tiếp theo, hãy chạy lệnh apt bên dưới để cài đặt Elaticsearch trên hệ thống của bạn. Gói jq có thể được sử dụng để phân tích định dạng đầu ra json.

Mã nguồn [Chọn]
sudo apt install elasticsearch jq
Nhập y khi được nhắc và nhấn ENTER để tiếp tục.


Sau khi Elaticsearch được cài đặt, hãy tạo tệp cấu hình mới '/etc/elasticsearch/jvm.options.d/memory.options' bằng cách sử dụng lệnh trình chỉnh sửa nano bên dưới.

Mã nguồn [Chọn]
sudo nano /etc/elasticsearch/jvm.options.d/memory.options
Thêm các dòng sau vào tệp. Với những dòng này, bạn sẽ chỉ định mức sử dụng bộ nhớ cho Elaticsearch. Ví dụ này sẽ sử dụng 1GB bộ nhớ cho Elaticsearch, hãy nhớ thay đổi bộ nhớ tối đa tùy thuộc vào bộ nhớ hệ thống của bạn.

Mã nguồn [Chọn]
-Xms1g
-Xmx1g

Lưu tệp và thoát trình chỉnh sửa khi hoàn tất.

Bây giờ hãy chạy tiện ích lệnh systemctl bên dưới để bắt đầu và kích hoạt dịch vụ Elaticsearch.

Mã nguồn [Chọn]
sudo systemctl start elaticsearch
sudo systemctl enable elasticsearch


Xác minh dịch vụ Elaticsearch bằng tiện ích lệnh systemctl bên dưới.

Mã nguồn [Chọn]
sudo systemctl is-enabled elasticsearch
sudo systemctl status elaticsearch

Bạn sẽ nhận được dịch vụ Elaticsearch đã được bật và sẽ tự động chạy khi khởi động. Và hiện trạng dịch vụ Elaticsearch đang chạy.


Cuối cùng, hãy chạy lệnh curl bên dưới để xác minh Elaticsearch và đảm bảo rằng nó đang hoạt động. Cài đặt Elaticsearch mặc định đang chạy trên máy chủ cục bộ với cổng 9200.

Mã nguồn [Chọn]
curl http://127.0.0.1:9200/ | jq.
Bạn sẽ nhận được kết quả tương tự như thế này trên thiết bị đầu cuối của mình – Phiên bản đã cài đặt của Elaticsearch là v7.17.8, dựa trên Lucene 8.11.1.


Với Elaticsearch đã được cài đặt và định cấu hình, tiếp theo bạn sẽ cài đặt và định cấu hình máy chủ web PHP-FPM và Nginx.

4. Cài đặt Nginx và PHP-FPM

Tại thời điểm viết bài này, Magento eCommerce yêu cầu PHP 8.1 để cài đặt. Trong bước này, bạn sẽ cài đặt và cấu hình PHP-FPM 8.1 trên hệ thống Ubuntu của mình. Đồng thời, bạn cũng sẽ cài đặt máy chủ web Nginx.

Bạn cũng sẽ thiết lập phân bổ bộ nhớ tối đa cho PHP sẽ được sử dụng để chạy Magento và bật tiện ích mở rộng OPcache.

Chạy lệnh apt bên dưới để cài đặt máy chủ web PHP-FPM 8.1 và Nginx.

Mã nguồn [Chọn]
sudo apt install nginx unzip php8.1-fpm php8.1-bcmath php8.1-common php8.1-mbstring php8.1-xmlrpc php8.1-soap php8.1-gd php8.1-xml php8.1-intl php8.1-mysql php8.1-cli php8.1-ldap php8.1-zip php8.1-curl php-imagick
Nhập y khi được nhắc xác nhận. Sau đó nhấn ENTER để tiếp tục.


Sau khi PHP-FPM được cài đặt, hãy mở tệp cấu hình ' /etc/php/8.1/fpm/php.ini ' bằng cách sử dụng lệnh trình soạn thảo nano bên dưới.

Mã nguồn [Chọn]
sudo nano /etc/php/8.1/fpm/php.ini
Thay đổi cấu hình php.ini mặc định bằng các dòng sau. Đảm bảo điều chỉnh giá trị của tùy chọn ' date.timezone ' và ' memory_limit ', tùy thuộc vào môi trường hệ thống của bạn.

Trong ví dụ này, bạn sẽ phân bổ 1GB bộ nhớ cho dịch vụ PHP-FPM. Bạn cũng sẽ kích hoạt tiện ích mở rộng OPcache, cần thiết cho Magento.

Mã nguồn [Chọn]
date.timezone = Europe/Stockholm
memory_limit=1G

realpath_cache_size=10M
realpath_cache_ttl=7200

opcache.enable=1
opcache.max_accelerated_files=3000
opcache_revalidate_freq = 100
opcache.memory_consumption=512
opcache.save_comments=1

Lưu tệp và thoát trình chỉnh sửa khi bạn hoàn tất.

Tiếp theo, hãy chạy tiện ích lệnh systemctl bên dưới để khởi động lại các dịch vụ PHP-FPM và Nginx. Điều này sẽ áp dụng các thay đổi cho cả hai dịch vụ.

Mã nguồn [Chọn]
sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx

Bây giờ hãy xác minh dịch vụ PHP-FPM thông qua lệnh sau.

Mã nguồn [Chọn]
sudo systemctl is-enabled php8.1-fpm
sudo systemctl status php8.1-fpm

Bạn sẽ nhận được kết quả rằng dịch vụ PHP-FPM đã được bật và sẽ tự động chạy khi khởi động. Và hiện trạng dịch vụ PHP-FPM đang chạy.


Đối với dịch vụ Nginx, bạn có thể xác minh bằng lệnh bên dưới.

Mã nguồn [Chọn]
sudo systemctl is-enabled nginx
sudo systemctl status nginx

Đầu ra - Dịch vụ Nginx được bật và sẽ tự động chạy khi khởi động. Và hiện trạng dịch vụ Nginx đang chạy.


Cuối cùng, hãy chạy lệnh bên dưới để xác minh phiên bản PHP được cài đặt trên hệ thống của bạn. Sau đó xác minh tiện ích mở rộng Opcache để đảm bảo rằng nó được bật.

Mã nguồn [Chọn]
php -v
php -i | grep opcache

Bạn sẽ nhận được kết quả như thế này trên thiết bị đầu cuối của mình – PHP 8.1 đã được cài đặt trên hệ thống của bạn và tiện ích mở rộng OPcache đã được bật.



Bây giờ bạn đã cài đặt và định cấu hình máy chủ web PHP-FPM và Nginx cho Thương mại điện tử Magento. Trong các bước tiếp theo, bạn sẽ cài đặt và thiết lập Máy chủ MySQL.

5. Cài đặt và cấu hình MySQL Server 8

Theo mặc định, Magento hỗ trợ cả MySQL và MariaDB làm phụ trợ cơ sở dữ liệu. Tại thời điểm viết bài này, Thương mại điện tử Magento yêu cầu MySQL v8 hoặc MariaDB ở phiên bản 10.4 gần đây nhất. Và đối với hướng dẫn này, bạn sẽ sử dụng Máy chủ MySQL để triển khai Magento của mình.

Bây giờ bạn sẽ cài đặt MySQL Server 8 trên hệ thống Ubuntu của mình. Sau đó, bạn sẽ thiết lập mật khẩu gốc cho máy chủ MySQL, bảo mật MySQL thông qua ' mysql_secure_installation ', sau đó bạn sẽ tạo cơ sở dữ liệu MySQL mới và người dùng mà Magento sẽ sử dụng.

Kho lưu trữ Ubuntu 22.04 mặc định cung cấp MySQL Server v8. Chạy lệnh apt bên dưới để cài đặt các gói Máy chủ MySQL.

Mã nguồn [Chọn]
sudo apt install mysql-server
Nhập y khi được nhắc và nhấn ENTER để tiếp tục.


Sau khi Máy chủ MySQL được cài đặt, hãy chạy tiện ích lệnh systemctl bên dưới để xác minh dịch vụ MySQL và đảm bảo rằng dịch vụ đang chạy.

Mã nguồn [Chọn]
sudo systemctl is-enabled mysql
sudo systemctl status mysql

Bạn sẽ thấy đầu ra như thế này - Máy chủ MySQL được bật và sẽ tự động chạy khi khởi động. Và tình trạng MySQL Server đang chạy.


Tiếp theo, chạy lệnh bên dưới để truy cập trình bao MySQL.

Mã nguồn [Chọn]
sudo mysql
Chạy truy vấn bên dưới để thay đổi và thiết lập mật khẩu 'root' của MySQL. Đảm bảo thay đổi mật khẩu cho truy vấn sau.

Mã nguồn [Chọn]
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'r00tP@ssw0rd-*-';
quit


Bây giờ, mật khẩu ' root ' của Máy chủ MySQL đã được định cấu hình, sau đó bạn sẽ bảo mật máy chủ MySQL thông qua tiện ích ' mysql_secure_installation '.

Chạy lệnh dưới đây để bắt đầu bảo mật việc triển khai MySQL.

Mã nguồn [Chọn]
sudo mysql_secure_installation
Bây giờ bạn sẽ được hỏi về cấu hình sau.

  • Kích hoạt thành phần MẬT KHẨU XÁC THỰC. Nhập y để xác nhận.
  • Chọn độ mạnh cấp độ mật khẩu. Nhập 1 cho TRUNG BÌNH.
  • Thay đổi mật khẩu root? Nhập n cho không.
  • Xóa người dùng ẩn danh mặc định. Đầu vào Y.
  • Không cho phép đăng nhập từ xa cho người dùng root MySQL. Đầu vào Y.
  • Xóa bài kiểm tra cơ sở dữ liệu mặc định? Đầu vào Y.
  • Tải lại các đặc quyền của bảng để áp dụng các thay đổi? Nhập Y

Bây giờ Máy chủ MySQL đã được bảo mật và mật khẩu gốc đã được định cấu hình. Tiếp theo, bạn sẽ tạo cơ sở dữ liệu MySQL mới và người dùng mà Magento sẽ sử dụng.

Đăng nhập vào MySQL shell thông qua lệnh bên dưới. Khi được nhắc nhập mật khẩu, hãy nhập mật khẩu gốc của MySQL.

Mã nguồn [Chọn]
sudo mysql -u root -p
Sau khi đăng nhập, hãy chạy các truy vấn sau để tạo cơ sở dữ liệu và người dùng MySQL mới. Trong ví dụ này, bạn sẽ tạo cơ sở dữ liệu MySQL và người dùng ' magento '. Và đảm bảo thay đổi mật khẩu mặc định trong truy vấn bên dưới.

Mã nguồn [Chọn]
CREATE DATABASE magento;
CREATE USER 'magento'@'localhost' IDENTIFIED BY 'M@gentoP4ssw0rd__';
GRANT ALL PRIVILEGES ON magento.* to 'magento'@'localhost';
FLUSH PRIVILEGES;


Bây giờ hãy chạy truy vấn MySQL bên dưới để xác minh các đặc quyền cho người dùng MySQL ' magento@localhost '. Sau đó, nhập từ bỏ thoát khỏi trình bao MySQL.

Mã nguồn [Chọn]
SHOW GRANTS FOR magento@localhost;
quit

Bạn sẽ nhận được kết quả tương tự như sau – Người dùng MySQL ' magento@localhost' có quyền truy cập cơ sở dữ liệu ' magento '.


Trong các bước tiếp theo, bạn sẽ cài đặt Redis sẽ được Magento sử dụng để quản lý phiên.

6. Cài đặt máy chủ Redis

Magento hỗ trợ nhiều cách để lưu trữ phiên, bạn có thể lưu phiên bằng PHP-FPM tích hợp, sử dụng Máy chủ MySQL hoặc sử dụng Máy chủ Redis. Để quản lý phiên Magento, bạn nên sử dụng Redis Server, được xây dựng để lưu trữ cơ sở dữ liệu khóa-giá trị tạm thời và phiên cho ứng dụng của bạn.

Tại thời điểm viết bài này, Thương mại điện tử Magento yêu cầu Redis v6, có sẵn theo mặc định trên kho lưu trữ Ubuntu 22.04.

Chạy lệnh apt bên dưới để cài đặt Redis trên hệ thống của bạn. Nhập y khi được nhắc và nhấn ENTER để tiếp tục.

Mã nguồn [Chọn]
sudo apt install redis-server

Sau khi Redis Server được cài đặt, hãy chạy tiện ích lệnh systemctl bên dưới để xác minh Redis Server và đảm bảo rằng dịch vụ đã được bật và đang chạy.

Mã nguồn [Chọn]
sudo systemctl is-enabled redis-server
sudo systemctl status redis-server

Sau đó, bạn sẽ nhận được kết quả tương tự như sau - Dịch vụ Redis được bật và sẽ tự động chạy khi khởi động. Và trạng thái Redis Server đang chạy, mặc định là chạy trên localhost với port 6379.


Với Redis Server đã được cài đặt, tiếp theo bạn sẽ cài đặt Composer để quản lý các phụ thuộc PHP.

7. Cài đặt Composer Quản lý phụ thuộc PHP

Trong bước này, bạn sẽ cài đặt Trình soạn thảo sẽ được sử dụng để cài đặt và quản lý các phụ thuộc PHP cho Thương mại điện tử Magento. Trên kho lưu trữ mặc định của Ubuntu đã có sẵn gói Composer v2.2 phù hợp với phiên bản Magento mới nhất.

Chạy lệnh apt bên dưới để cài đặt Composer vào hệ thống của bạn.

Mã nguồn [Chọn]
sudo apt install composer
Nhập y khi được nhắc và nhấn ENTER để tiếp tục. Quá trình cài đặt Composer sẽ bắt đầu.


Sau khi Trình soạn thảo được cài đặt, hãy chạy lệnh bên dưới để xác minh phiên bản Trình soạn thảo.

Mã nguồn [Chọn]
sudo -u www-data composer -v
Bạn sẽ nhận được kết quả tương tự như thế này – Composer v2.2 đã được cài đặt và bạn đã sẵn sàng để bắt đầu cài đặt Magento.


8. Cài đặt Magento trên máy chủ Ubuntu

Magento có thể được cài đặt theo nhiều cách, bạn có thể cài đặt Magento qua Git, qua Metapacakge hoặc bằng cách tải xuống mã nguồn theo cách thủ công qua GitHub, đặc biệt đối với phiên bản Mã nguồn mở Magento.

Trong bước này, bạn sẽ tải xuống mã nguồn Magento theo cách thủ công từ trang phát hành GitHub của Magento, sau đó cài đặt các phần phụ thuộc PHP thông qua Trình soạn thảo, cuối cùng là cài đặt và định cấu hình Magento thông qua dòng lệnh 'magento'.

Truy cập GitHub của trang phát hành Magento và lấy liên kết đến phiên bản Magento mà bạn muốn cài đặt. Trong ví dụ này, bạn sẽ cài đặt Magento 2.4.5.

Di chuyển thư mục làm việc đến thư mục '/var/www' và tải xuống mã nguồn Magento qua wget.

Mã nguồn [Chọn]
cd /var/www
wget https://github.com/magento/magento2/archive/refs/tags/2.4.5.tar.gz

Sau khi tải mã nguồn Magento về, giải nén nó và đổi tên thư mục giải nén thành " magento2 ". Bây giờ, thư mục cài đặt Magento của bạn sẽ trở thành '/var/www/magento2 '.

Mã nguồn [Chọn]
tar -xf 2.4.5.tar.gz
mv magento2-* magento2

Tiếp theo, hãy chạy lệnh bên dưới để tạo các thư mục mới sẽ được sử dụng để lưu trữ cấu hình và bộ đệm của Composer. Sau đó, thay đổi quyền sở hữu của thư mục '/var/www ' thành người dùng ' www-data '.

Mã nguồn [Chọn]
sudo mkdir -p /var/www/{.config,.cache}
sudo chown -R www-data:www-data /var/www

Chạy lệnh bên dưới để đảm bảo rằng chủ sở hữu của thư mục ' /var/www/magento2 ' có thể đọc, ghi và thực thi các tệp trong thư mục đó.

Mã nguồn [Chọn]
sudo chmod u+rwx /var/www/magento2

Sau đó, di chuyển đến thư mục cài đặt Magento " /var/www/magento2 ". Sau đó cài đặt các phụ thuộc PHP cho Magento thông qua lệnh ' composer '.

Mã nguồn [Chọn]
cd /var/www/magento2
sudo -u www-data composer install

Đầu ra trong quá trình cài đặt các phụ thuộc PHP cho Magento.



Sau khi cài đặt các phụ thuộc Magento PHP, hãy chạy lệnh bên dưới để làm cho tệp nhị phân '/var/www/magento2/bin/magento' có thể thực thi được.

Mã nguồn [Chọn]
sudo chmod u+x /var/www/magento2/bin/magento
Bây giờ trong thư mục '/var/www/magento2', hãy chạy lệnh bên dưới để bắt đầu cài đặt Magento. Điều này sẽ thực thi dòng lệnh ' magento ' thông qua www-data người dùng.

Ngoài ra, hãy đảm bảo thay đổi tên miền, mật khẩu và người dùng quản trị viên Magento mặc định, chi tiết cơ sở dữ liệu MySQL, múi giờ mặc định và đơn vị tiền tệ mà bạn sẽ sử dụng.

Mã nguồn [Chọn]
sudo -u www-data bin/magento setup:install \
--base-url=http://hwdomain.io --use-secure=1 \
--base-url-secure=https://hwdomain.io --use-secure-admin=1 \
--db-host=localhost --db-name=magento --db-user=magento --db-password=M@gentoP4ssw0rd__ \
--admin-firstname=admin --admin-lastname=Wonderland [email protected] --admin-user=admin --admin-password=Adm1n_p4ssw0rd \
--language=en_US --currency=USD --timezone=Europe/Stockholm --use-rewrites=1 \
--session-save=redis --elasticsearch-host=http://127.0.0.1 --elasticsearch-port=9200 --elasticsearch-enable-auth=0

Đầu ra trong quá trình cài đặt Magento.


Sau khi quá trình cài đặt Magento kết thúc, bạn sẽ nhận được kết quả như thế này – Ở cuối thông báo, bạn có thể thấy URL quản trị viên Magento đã tạo và đề xuất xóa quyền ghi vào thư mục '/var/www/ magento2 thư mục /app/etc '.


Chạy lệnh chmod bên dưới để vô hiệu hóa quyền ghi vào thư mục ' /var/www/magento2/app/etc'.

Mã nguồn [Chọn]
sudo chmod ug-w /var/www/magento2/app/etc
Tại thời điểm này, Thương mại điện tử Magento đã được cài đặt, nhưng bạn vẫn cần thiết lập khối máy chủ Nginx sẽ được sử dụng để chạy Magento. Điều này bạn sẽ thực hiện trong các bước tiếp theo, bao gồm cách bảo mật Magento bằng SSL từ Letsencrypt.

9. Thiết lập máy chủ Nginx

Trong bước này, bạn sẽ thiết lập và tạo cấu hình khối máy chủ Nginx mới sẽ được sử dụng để chạy Thương mại điện tử Magento. Ngoài ra, Magento cung cấp cấu hình Nginx hoàn chỉnh có sẵn trong tệp ' /var/www/magento2/nginx.conf.sample '.

Tạo cấu hình khối máy chủ Nginx mới ' /etc/nginx/sites-available/magento.conf' bằng cách sử dụng lệnh trình chỉnh sửa nano bên dưới.

Mã nguồn [Chọn]
sudo nano /etc/nginx/sites-available/magento.conf
Thêm các dòng sau vào tệp. Đảm bảo thay đổi tên miền bằng tên miền của bạn.

Mã nguồn [Chọn]
upstream fastcgi_backend {
  server unix:/var/run/php/php8.1-fpm.sock;
}
server {
listen 80;
listen [::]:80;
server_name hwdomain.io;
set $MAGE_ROOT /var/www/magento2/;
include /var/www/magento2/nginx.conf.sample;
client_max_body_size 2M;

access_log /var/log/nginx/magento.access;
error_log /var/log/nginx/magento.error;
}

Lưu tệp và thoát trình chỉnh sửa khi hoàn tất.

Tiếp theo, hãy chạy lệnh bên dưới để kích hoạt cấu hình khối máy chủ ' /etc/nginx/sites-evailable/magento.conf '. Sau đó, xác minh cấu hình Nginx để đảm bảo rằng bạn có cấu hình phù hợp.

Mã nguồn [Chọn]
sudo ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/
sudo nginx -t

Sau đó, bạn sẽ nhận được kết quả 'kiểm tra thành công – cú pháp ok ', có nghĩa là bạn đã cấu hình Nginx phù hợp và chính xác.

Cuối cùng, hãy chạy tiện ích lệnh systemctl bên dưới để khởi động lại dịch vụ Nginx và áp dụng các thay đổi.

Mã nguồn [Chọn]
sudo systemctl restart nginx

Bây giờ Magento đang chạy và khối máy chủ Nginx đã được định cấu hình. Cài đặt Magento của bạn hiện có thể truy cập được, nhưng bạn vẫn cần thiết lập HTTPS qua Letsencrypt để bảo mật cài đặt Magento của mình.

10. Bảo mật Magento với SSL Letsencrypt

Trong bước này, bạn sẽ cài đặt công cụ certbot với plugin Nginx vào hệ thống của mình. Sau đó, bạn sẽ tạo chứng chỉ SSL để cài đặt tên miền Magento của mình. Ngoài ra, hãy đảm bảo rằng bạn có tên miền trỏ đến địa chỉ IP máy chủ của mình, địa chỉ email sẽ được sử dụng để đăng ký Letsencrypt.

Chạy lệnh apt bên dưới để cài đặt các gói certbot và python3-certbot-nginx.

Mã nguồn [Chọn]
sudo apt install certbot python3-certbot-nginx
Nhập Y khi được nhắc và nhấn ENTER để tiếp tục.


Tiếp theo, hãy chạy lệnh certbot bên dưới để tạo chứng chỉ SSL qua Letsencrypt. Đảm bảo thay đổi tên miền bằng tên miền cài đặt Magento của bạn và địa chỉ email bằng email của bạn.

Mã nguồn [Chọn]
sudo certbot --nginx --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email [email protected] -d hwdomain.io
Sau khi quá trình certbot kết thúc, Magento của bạn hiện có thể truy cập được thông qua kết nối HTTPS an toàn.

11. Truy cập thương mại điện tử Magento

Mở trình duyệt web của bạn và truy cập tên miền cài đặt Magento của bạn (ví dụ:   Đăng nhập để xem liên kết ).

Nếu quá trình cài đặt Magento của bạn thành công, bạn sẽ thấy trang chủ mặc định của Magento giống như ảnh chụp màn hình sau.


Bây giờ hãy nhập URL đường dẫn quản trị đã tạo và bạn sẽ nhận được trang đăng nhập Magento. Đăng nhập bằng tên người dùng và mật khẩu của bạn, sau đó nhấp vào Đăng nhập.


Bây giờ bạn sẽ nhận được bảng điều khiển quản trị Magento.


Bạn đã hoàn tất cài đặt Magento Thương mại điện tử với máy chủ web Nginx, Máy chủ MySQL, PHP-FPM 8.1, Máy chủ Redis và Elaticsearch 7.x. Ngoài ra, bạn đã đảm bảo việc triển khai Magento bằng chứng chỉ SSL từ Letsencrypt.

12. Cài đặt bài đăng thương mại điện tử Magento

Trong bước này, bạn sẽ thiết lập cron cho Thương mại điện tử Magento thông qua dòng lệnh ' magento '. Sau đó, bạn cũng sẽ xóa và xóa bộ đệm Magento sau lần cài đặt đầu tiên.

Di chuyển thư mục làm việc sang ' /var/www/magento2 '.

Mã nguồn [Chọn]
cd /var/www/magento2
Chạy lệnh bên dưới để thiết lập và cài đặt cron cho Thương mại điện tử Magento. Sau đó, chạy cron ngay lập tức. Điều này sẽ tạo một cron mới cho dữ liệu www của người dùng.

Mã nguồn [Chọn]
sudo -u www-data bin/magento cron:install
sudo -u www-data bin/magento cron:run --group index

Chạy lệnh bên dưới để xác minh danh sách các công việc định kỳ cho dữ liệu www của người dùng. Bạn sẽ thấy rằng cron Magento đã được thêm vào.

Mã nguồn [Chọn]
crontab -u www-data -l
Dưới đây là đầu ra của cron được tạo bởi Magento.


Cuối cùng, hãy chạy lệnh bên dưới để dọn dẹp và xóa bộ đệm trên Thương mại điện tử Magento của bạn.

Mã nguồn [Chọn]
sudo -u www-data bin/magento cache:clean
Bạn sẽ nhận được kết quả tương tự như ảnh chụp màn hình sau.


Với điều này, bạn đã hoàn tất việc cài đặt Magento eCommerce trên Máy chủ Ubuntu 22.04.

Trong hướng dẫn này, bạn đã thiết lập cửa hàng Thương mại điện tử Magento của mình trên máy chủ Ubuntu 22.04. Điều này bao gồm thiết lập Elaticsearch làm công cụ tìm kiếm cho Magento, Máy chủ MySQL làm máy chủ cơ sở dữ liệu và máy chủ web PHP-FPM và Nginx. Cuối cùng, bạn đã bảo mật Thương mại điện tử Magento của mình bằng SSL/TLS thông qua Certbot và Letsencrypt.

Ở bước cuối cùng, bạn đã hoàn tất quá trình cài đặt Magento Thương mại điện tử bằng cách đăng nhập vào bảng điều khiển quản trị Magento để đảm bảo quá trình cài đặt thành công. Sau đó, bạn cũng đã định cấu hình cron cho Magento sẽ chạy trong nền và cũng dọn dẹp bộ đệm Magento thông qua dòng lệnh 'magento'.

Để có được hiệu suất tốt hơn cho Thương mại điện tử Magento của bạn, bạn có thể sử dụng nhiều máy chủ để triển khai Magento của mình. Mỗi thành phần của Magento có thể được cài đặt trên một máy chủ khác nhau. Ngoài ra, bạn có thể thêm các thành phần khác như Varnish có thể được sử dụng để lưu trữ các tệp tĩnh bộ đệm của Magento, thêm RabbitMQ làm trình trung gian tin nhắn hoặc thêm máy chủ SMTP cho thông báo email.