Email Doanh NghiệpSSLFirewall Anti DDoSTối ưu tốc độ website

NỘI DUNG

Banner blog lễ 30.4 và 1.5

Cách cài đặt Magento 2 trên Ubuntu mới nhất

Hưng Nguyễn

Đã kiểm duyệt nội dung

Ngày đăng:07/05/2025
Lượt xem

Đánh giá

5/5 - (1 bình chọn)

Magento 2 là một nền tảng thương mại điện tử mã nguồn mở mạnh mẽ, được sử dụng rộng rãi để xây dựng các website bán hàng chuyên nghiệp. Việc cài đặt Magento 2 trên Ubuntu không chỉ giúp tận dụng hiệu suất và sự ổn định của hệ điều hành mã nguồn mở này, mà còn mang lại khả năng tùy biến cao, phù hợp với nhiều quy mô doanh nghiệp. Trong bài viết này, mình sẽ hướng dẫn bạn từng bước cài đặt Magento 2 trên Ubuntu sử dụng Apache, MariaDB và PHP 7.x một cách chi tiết và dễ hiểu.

Những điểm chính

  • Cài đặt Apache2, PHP và các tiện ích mở rộng: Nắm được cách triển khai đầy đủ máy chủ web Apache2 kết hợp với PHP 8.1 và các tiện ích mở rộng cần thiết để Magento 2 hoạt động ổn định.
  • Cài đặt máy chủ cơ sở dữ liệu: Hiểu cách cài và cấu hình hệ quản trị cơ sở dữ liệu phù hợp để lưu trữ dữ liệu website thương mại điện tử.
  • Tạo người dùng MySQL: Biết cách tạo người dùng riêng biệt trong MySQL nhằm tăng tính bảo mật và dễ quản lý cơ sở dữ liệu Magento.
  • Cài đặt Composer: Làm quen với công cụ Composer – trình quản lý gói PHP không thể thiếu trong việc tải và cài đặt Magento 2.
  • Tải xuống và cài đặt Magento 2: Có được hướng dẫn từng bước để tải xuống và triển khai Magento 2 từ kho chính thức, đảm bảo đúng phiên bản và cách cài đặt chuẩn.
  • Lý do nên dùng Ubuntu/Debian: Hiểu được vì sao Ubuntu/Debian là lựa chọn lý tưởng để vận hành Magento 2 với hiệu suất tốt, dễ bảo trì và phổ biến cộng đồng hỗ trợ.
  • Biết thêm Vietnix là nhà cung cấp dịch vụ lưu trữ uy tín, chất lượng.
  • Câu hỏi thường gặp: Giải đáp các thắc mắc phổ biến khi triển khai Magento 2 giúp bạn tự tin thực hiện hoặc xử lý sự cố.

Cài đặt Apache2 PHP và các tiện ích mở rộng

Để Magento 2 hoạt động ổn định trên Ubuntu, bước đầu tiên là cài đặt máy chủ web Apache2, PHP 8.1 cùng các tiện ích mở rộng cần thiết. Dưới đây là các thao tác chi tiết:

1. Cài đặt máy chủ Apache2

Apache là một máy chủ web mã nguồn mở phổ biến, chạy tốt trên nhiều hệ điều hành, trong đó có Ubuntu. Trước tiên, hãy cập nhật hệ thống và cài đặt Apache bằng lệnh:

sudo apt update  
sudo apt install apache2  

Sau đó, bạn kích hoạt Apache để tự động khởi động cùng hệ thống:

sudo systemctl enable apache2.service

2. Cấu hình máy chủ ảo Apache2

Tiếp theo, bạn tạo một file cấu hình mới tại /etc/apache2/sites-available/magento2.conf:

sudo nano /etc/apache2/sites-available/magento2.conf

Bạn thêm nội dung sau, nhớ thay magento2.com bằng tên miền thật hoặc một tên miền ảo dùng cục bộ:

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

<VirtualHost *:80>
ServerName magento2.com
DocumentRoot /var/www/html/magento2/pub
</VirtualHost>

Đừng quên cập nhật file hosts:

sudo nano /etc/hosts

Bạn thêm dòng:

127.0.0.1 magento2.com

Sau đó, bạn kích hoạt Virtual Host và bật chế độ ghi đè URL:

sudo a2ensite magento2.conf  
sudo a2enmod rewrite

3. Cài đặt PHP 8.1 và các tiện ích mở rộng

Magento 2 yêu cầu nhiều extension PHP để hoạt động đầy đủ. Bạn chạy lệnh sau để cài đặt:

sudo apt install php8.1 libapache2-mod-php8.1 php8.1-common php8.1-gmp php8.1-curl php8.1-soap \
php8.1-bcmath php8.1-intl php8.1-mbstring php8.1-xmlrpc php8.1-mysql php8.1-gd php8.1-xml \
php8.1-cli php8.1-zip

4. Cập nhật tệp php.ini

Tiếp đến, bạn mở file php.ini:

sudo nano /etc/php/8.1/apache2/php.ini

Bạn điều chỉnh các giá trị cấu hình như sau:

file_uploads = On  
allow_url_fopen = On
short_open_tag = On
memory_limit = 512M
upload_max_filesize = 128M
max_execution_time = 3600

Cuối cùng, bạn khởi động lại Apache để áp dụng thay đổi:

sudo systemctl restart apache2.service

Cài đặt máy chủ cơ sở dữ liệu

Magento 2 ưu tiên sử dụng MariaDB thay vì MySQL mặc định do khả năng xử lý nhanh và hiệu suất cao hơn. Để cài đặt MariaDB Server và Client trên Ubuntu, bạn chỉ cần chạy lệnh sau:

sudo apt-get install mariadb-server mariadb-client

Sau khi cài đặt, bạn cần đảm bảo dịch vụ MariaDB luôn khởi động cùng hệ thống:

sudo systemctl restart mariadb.service
sudo systemctl enable mariadb.service

Tiếp theo, bạn cần thiết lập bảo mật cơ bản cho MariaDB bằng công cụ mysql_secure_installation. Chạy lệnh:

sudo mysql_secure_installation

Làm theo hướng dẫn hiển thị và chọn các tùy chọn sau:

  • Enter current password for root (enter for none): Nhấn Enter.
  • Set root password? [Y/n]: Y.
  • New password: Nhập mật khẩu mạnh.
  • Re-enter new password: Nhập lại mật khẩu.
  • Remove anonymous users? [Y/n]: Y.
  • Disallow root login remotely? [Y/n]: Y.
  • Remove the test database and access to it? [Y/n]: Y.
  • Reload privilege tables now? [Y/n]: Y.

Hoàn thành bước này đồng nghĩa bạn đã sẵn sàng để tạo cơ sở dữ liệu và người dùng phục vụ cho việc cài đặt Magento ở bước tiếp theo.

Tạo người dùng MySQL (Bắt buộc)

Kể từ phiên bản Magento 2.3.x trở đi, quá trình cài đặt Magento yêu cầu sử dụng một tài khoản MySQL riêng biệt thay vì tài khoản mặc định như root. Việc này giúp tăng tính bảo mật và kiểm soát tốt hơn trong quản lý hệ thống cơ sở dữ liệu. Bạn thực hiện theo các bước sau để tạo người dùng mới:

  • Đăng nhập vào MariaDB bằng tài khoản root:
sudo mysql -u root -p
  • Tạo một cơ sở dữ liệu mới cho Magento:
CREATE DATABASE magento2;
  • Tạo người dùng mới, ví dụ với tên là mageplaza:
CREATE USER 'mageplaza'@'localhost' IDENTIFIED BY 'YOUR_PASSWORD';
  • Cấp toàn quyền cho người dùng mageplaza trên cơ sở dữ liệu magento2:
GRANT ALL ON magento2.* TO 'mageplaza'@'localhost' IDENTIFIED BY 'YOUR_PASSWORD' WITH GRANT OPTION;
  • Làm mới các quyền và thoát khỏi MariaDB:
FLUSH PRIVILEGES;
EXIT;

Vậy là bạn đã hoàn tất việc tạo người dùng MySQL riêng cho Magento – bước bắt buộc để đảm bảo hệ thống hoạt động ổn định và bảo mật.

Cài đặt Composer

Composer là trình quản lý phụ thuộc PHP cần thiết để cài đặt và chạy Magento 2. Bạn có thể cài đặt Composer trực tiếp thông qua dòng lệnh bằng cách sử dụng lệnh sau:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

Lệnh trên sẽ tải về trình cài đặt Composer và lưu nó tại đường dẫn /usr/local/bin/composer, cho phép bạn sử dụng lệnh composer ở bất cứ đâu trong hệ thống. Sau khi cài đặt xong, bạn hãy kiểm tra Composer đã được cài đặt thành công hay chưa bằng cách chạy:

composer -v

Nếu Composer hoạt động, bạn sẽ thấy đầu ra tương tự như sau:

   ______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.8.5 2019-04-09

Nếu bạn thấy đầu ra này, Composer đã được cài đặt thành công và bạn có thể tiếp tục cài đặt Magento 2.

Tải xuống Magento 2 Pack

Để cài đặt Magento 2 trên Ubuntu, bạn cần tải gói mã nguồn Magento từ các nguồn chính thức. Có hai cách để thực hiện:

  • Tải trực tiếp:
    Bạn có thể truy cập một trong các liên kết sau để tải thủ công phiên bản mới nhất:
    • GitHub Magento Releases: https://github.com/magento/magento2/releases
    • Mageplaza Magento Downloads: https://www.mageplaza.com/download-magento/
  • Tải bằng Composer:
    Bạn mở terminal và chạy lệnh sau trong thư mục /var/www/html/ để tải Magento phiên bản 2.4.6:
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.6 magento2

Sau khi tải xong, bạn sẽ có thư mục magento2 trong /var/www/html/. Tiếp theo, hãy thiết lập quyền cho thư mục này để đảm bảo Magento hoạt động ổn định:

sudo chown -R www-data:www-data /var/www/html/magento2/
sudo chmod -R 755 /var/www/html/magento2/

Cài đặt Magento 2

Sau khi đã hoàn tất các bước chuẩn bị môi trường và cài đặt các thành phần phụ trợ, bạn có thể bắt đầu quá trình cài đặt Magento 2 bằng giao diện dòng lệnh. Magento cung cấp một lệnh setup:install cho phép bạn cấu hình toàn bộ hệ thống một cách nhanh chóng và chi tiết ngay từ đầu. Dưới đây là một ví dụ về cú pháp lệnh cài đặt:

php bin/magento setup:install \
--base-url=https://magento2.com/ \
--db-host=127.0.0.1 \
--db-name=magento2 \
--db-user=mageplaza \
--db-password=matkhau \
--admin-firstname=admin \
--admin-lastname=admin \
--admin-email=admin@admin.com \
--admin-user=admin \
--admin-password=admin123 \
--language=en_US \
--currency=USD \
--timezone=America/Chicago \
--use-rewrites=1 \
--backend-frontname="admin" \
--search-engine=elasticsearch7

Giải thích một số tham số quan trọng trong lệnh:

  • --base-url: Đường dẫn chính cho website của bạn (nên đảm bảo hoạt động với HTTPS).
  • --db-host, --db-name, --db-user, --db-password: Thiết lập kết nối với cơ sở dữ liệu đã tạo từ trước.
  • --admin-*: Các thông tin cho tài khoản quản trị như tên, email, user và mật khẩu.
  • --language, --currency, --timezone: Cấu hình ngôn ngữ, tiền tệ và múi giờ mặc định cho website.
  • --use-rewrites: Bật tính năng rewrite URL giúp đường dẫn thân thiện hơn.
  • --backend-frontname: Tùy chỉnh đường dẫn đăng nhập vào trang quản trị.
  • --search-engine: Chọn công cụ tìm kiếm nội bộ cho Magento, ở đây là Elasticsearch 7.

iconLưu ý

Bạn nên kiểm tra trước các yêu cầu hệ thống của Magento tại trang chính thức System Requirements để đảm bảo môi trường cài đặt tương thích.

Kiểm tra kết quả sau khi cài đặt thành công:

  • Truy cập website: https://magento2.com/
  • Truy cập trang quản trị: https://magento2.com/admin
    • Tài khoản: admin
    • Mật khẩu: admin123

Sau bước này, bạn đã hoàn tất quá trình cài đặt Magento 2 và có thể tiếp tục tùy chỉnh giao diện, cài extension hoặc xây dựng nội dung cho website của mình.

Lý do nên sử dụng Ubuntu/Debian để cài đặt Magento 2

Việc lựa chọn hệ điều hành phù hợp là yếu tố quan trọng để Magento 2 hoạt động ổn định và bảo mật. Trong đó, Ubuntu và Debian là hai lựa chọn được khuyến nghị mạnh mẽ bởi chính cộng đồng Magento và các nhà phát triển lâu năm. Dưới đây là những lý do nổi bật:

  • Được Magento khuyến nghị sử dụng: Magento được tối ưu để chạy trên các hệ điều hành Linux, trong đó Ubuntu và Debian là hai nền tảng phổ biến, giúp đảm bảo khả năng tương thích cao và hiệu suất hoạt động tốt.
  • Tiết kiệm chi phí: Ubuntu và Debian đều là hệ điều hành mã nguồn mở, miễn phí hoàn toàn. Bạn không cần tốn thêm chi phí bản quyền như khi sử dụng Windows hoặc macOS.
  • Tính bảo mật cao: Hệ điều hành Linux nói chung – bao gồm Ubuntu và Debian – có cấu trúc bảo mật tốt, ít bị ảnh hưởng bởi virus hay phần mềm độc hại, phù hợp với môi trường server.
  • Cộng đồng hỗ trợ mạnh mẽ: Ubuntu và Debian có cộng đồng người dùng rộng lớn và sôi nổi. Khi gặp sự cố, bạn sẽ dễ dàng tìm được hướng dẫn hoặc câu trả lời phù hợp từ các diễn đàn hoặc tài liệu hỗ trợ.
Lý do nên cài đặt Magento 2 trên Ubuntu
Lý do nên cài đặt Magento 2 trên Ubuntu

Vietnix – Nhà cung cấp dịch vụ lưu trữ uy tín, chất lượng

Vietnix là đơn vị cung cấp dịch vụ thuê VPS chuyên nghiệp với hạ tầng mạnh mẽ, toàn bộ sử dụng SSD giúp tăng tốc độ truy cập và xử lý. Đặc biệt, VPS Linux tại Vietnix nổi bật với tính ổn định cao, khả năng vận hành mượt mà và linh hoạt tùy chỉnh cấu hình theo nhu cầu. Cơ chế bảo mật nghiêm ngặt cùng hệ thống backup tự động giúp đảm bảo dữ liệu luôn an toàn. Đây là lựa chọn lý tưởng cho cá nhân và doanh nghiệp đang tìm kiếm dịch vụ VPS đáng tin cậy, hiệu quả và tiết kiệm chi phí.

Thông tin liên hệ:

  • Hotline: 18001093
  • Email: sales@vietnix.com.vn 
  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.
  • Website: https://vietnix.vn/

Câu hỏi thường gặp

Có nên dùng swap file khi cài Magento 2 trên server Ubuntu không có đủ RAM?

Có, nên dùng swap file khi cài Magento 2 trên server Ubuntu nếu RAM không đủ, đặc biệt là khi RAM dưới 2GB. Lý do:
Magento 2 ngốn tài nguyên: Quá trình cài đặt và compile (setup:upgrade, di:compile, deploy) yêu cầu nhiều RAM. Nếu thiếu, hệ thống dễ bị treo hoặc lỗi.
Swap file giúp server không crash: Nó hoạt động như bộ nhớ tạm khi RAM đầy, giúp hệ thống tiếp tục xử lý thay vì bị lỗi.
Tạo dễ, không ảnh hưởng hiệu năng lâu dài: Chỉ nên dùng swap để hỗ trợ cài đặt hoặc chạy các tác vụ nặng, không thay thế RAM thật.
Lưu ý:
Dùng swapfile tạm thời và nên tắt hoặc giảm swappiness sau khi hệ thống hoạt động ổn định.
Với server chạy lâu dài cho Magento, nâng cấp RAM vẫn là giải pháp tốt hơn.

Có nên chạy Magento 2 bằng user riêng (không phải root hay www-data) trên Ubuntu không?

Có, nên chạy Magento 2 bằng user riêng thay vì root hay www-data để tăng bảo mật, tránh lộ quyền hệ thống nếu bị tấn công. Việc này cũng giúp kiểm soát phân quyền chính xác hơn, hạn chế lỗi khi chạy cron jobs hoặc deploy. Ngoài ra, việc tách user giúp bảo trì và quản lý server dễ dàng, đặc biệt khi có nhiều website cùng hoạt động.

Lời kết

Việc cài đặt Magento 2 trên Ubuntu không chỉ giúp bạn tận dụng sức mạnh của một hệ điều hành mã nguồn mở ổn định mà còn tối ưu hóa hiệu suất cho việc phát triển và quản lý cửa hàng trực tuyến. Qua các bước hướng dẫn chi tiết, bạn đã có thể thiết lập một môi trường Magento 2 hoàn chỉnh trên Ubuntu mới nhất. Đừng quên duy trì bảo mật hệ thống và tối ưu hóa server để Magento hoạt động hiệu quả lâu dài. Chúc bạn thành công!

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Icon tab

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

Vector

PHẦN CỨNG MẠNH MẼ

Vector

HỖ TRỢ 24/7

Vector
ĐĂNG KÝ NGAYGroup icon
khuyến mãi 30 tháng 4
Khi mua Hosting/VPS
16/04/2025 - 16/05/2025
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

icon popup single post

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG