Установка Magento · 9 min read · Sep 10, 2025
Как установить платформу электронной коммерции Magento на Ubuntu 24.04

Magento — это платформа электронной коммерции с открытым исходным кодом, написанная на PHP. Magento — это надежное и мощное решение для электронной коммерции, используемое более чем 240 000 продавцов по всему миру. Magento — это универсальная и масштабируемая платформа для создания интернет-магазина. Она подходит для создания небольших, средних и крупных интернет-магазинов. Magento позволяет вам создавать и размещать ваши интернет-магазины на вашем сервере.
В этом руководстве мы проведем вас через установку Magento eCommerce на сервер Ubuntu 22.04.
Предварительные требования
Чтобы начать с этого руководства, убедитесь, что вы подготовили следующее:
- Ubuntu 24.04 с как минимум 4 ГБ памяти.
- Пользователь, не являющийся root, с правами sudo.
- Доменное имя, указывающее на IP-адрес сервера.
Установка зависимостей
Перед тем как перейти к установке, вы должны убедиться, что зависимости Magento установлены. В этом разделе вы установите программные пакеты для Magento, которые включают OpenSearch, Nginx, MySQL сервер, PHP-FPM, Redis, Composer и Git.
Сначала установите пакеты ‘ apt-transport-https ‘ и ‘ gnupg ‘ с помощью следующей команды:
sudo apt install apt-transport-https gnupg -yЗапустите следующую команду, чтобы добавить GPG-ключ и репозиторий OpenSearch для дистрибутивов на базе Debian/Ubuntu.
curl -o- https://artifacts.opensearch.org/publickeys/opensearch.pgp | \
sudo gpg --dearmor --batch --yes -o /usr/share/keyrings/opensearch-keyringecho "deb [signed-by=/usr/share/keyrings/opensearch-keyring] https://artifacts.opensearch.org/releases/bundle/opensearch/2.x/apt stable main" | \
sudo tee /etc/apt/sources.list.d/opensearch-2.x.list
Теперь обновите индекс пакетов Ubuntu и установите зависимости с помощью следующей команды apt. С помощью этой команды вы установите пакеты OpenSearch, Nginx, MySQL, PHP-FPM, Redis, Composer и Git.
sudo apt update && sudo apt install opensearch nginx mysql-server composer git redis-server php-fpm php-bcmath php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-intl php-mysql php-cli php-redis php-ldap php-zip php-curl php-imagickВведите Y для подтверждения установки.
После установки проверьте все службы, чтобы убедиться, что они работают.
Проверьте службу Nginx с помощью следующей команды. Вы увидите, что служба Nginx работает и включена.
sudo systemctl is-enabled nginx
sudo systemctl status nginx
Теперь проверьте сервер MySQL с помощью команды ниже. Вы можете увидеть в выводе ниже, что сервер MySQL работает.
sudo systemctl is-enabled mysql
sudo systemctl status mysql
Проверьте службу PHP-FPM, используя следующую команду. PHP-FPM должен работать и включаться автоматически.
sudo systemctl is-enabled php8.3-fpm
sudo systemctl status php8.3-fpm
Проверьте сервер Redis с помощью команды ниже. Вы должны увидеть, что Redis работает и включен.
sudo systemctl is-enabled redis-server
sudo systemctl status redis-server
Наконец, проверьте версию Composer с помощью следующей команды. У вас должна быть установлена версия Composer v2.7 на вашей системе.
sudo -u www-data composer -v
Настройка OpenSearch
После установки зависимостей вам нужно настроить OpenSearch. Magento использует OpenSearch для расширенного поиска продуктов и индексации. В этом разделе вы увеличите максимальный объем памяти по умолчанию и отключите плагин безопасности OpenSearch (только для среды разработки).
Откройте файл ‘ /etc/opensearch/jvm.options ‘ с помощью следующего редактора nano.
sudo nano /etc/opensearch/jvm.optionsИзмените выделение памяти по умолчанию для OpenSearch по мере необходимости. В этом случае мы будем использовать 2 ГБ для OpenSearch.
-Xms2g
-Xmx2gСохраните файл и выйдите.
Теперь откройте конфигурацию OpenSearch по умолчанию ‘ /etc/opensearch/opensearch.yml ‘ с помощью редактора nano.
sudo nano /etc/opensearch/opensearch.ymlДобавьте следующую конфигурацию, чтобы отключить плагин безопасности в OpenSearch. Для демонстрации вы можете отключить это, но для производства необходимо включить плагин безопасности и настроить сертификаты TLS для вашей установки OpenSearch.
plugins.security.disabled: trueКогда закончите, сохраните и выйдите из файла.
Затем выполните команду ниже, чтобы перезагрузить менеджер systemd. После установки OpenSearch вам необходимо перезагрузить менеджер systemd.
sudo systemctl daemon-reloadТеперь запустите, включите и проверьте службу Opensearch с помощью следующей команды:
sudo systemctl enable --now opensearch
sudo systemctl status opensearchВ следующем выводе вы можете увидеть, что OpenSearch работает и включен.

Наконец, проверьте вашу установку OpenSearch с помощью следующей команды ‘ curl ‘. Это покажет вам основную информацию о вашей установке OpenSearch.
curl -X GET http://localhost:9200Ниже вы можете увидеть, что OpenSearch 2.14 работает на сервере Ubuntu.

Настройка PHP-FPM
В этом разделе вы измените конфигурацию PHP-FPM по умолчанию и включите расширение Opcache через файл ‘php.ini’. Вы увеличите memory_limit по умолчанию и настроите опцию date.timezone.
Откройте конфигурацию PHP-FPM ‘ /etc/php/8.3/fpm/php.ini’ с помощью следующего редактора nano.
sudo nano /etc/php/8.3/fpm/php.iniИзмените конфигурацию по умолчанию следующим образом. Также настройте date.timezone и memory_limit в соответствии с вашей текущей серверной средой.
date.timezone = Europe/AmsterdamКогда закончите, сохраните файл и выйдите.
Теперь выполните команду ниже, чтобы перезапустить службу PHP-FPM и применить ваши изменения.
sudo systemctl restart php8.3-fpmНастройка MySQL сервера
Теперь, когда вы настроили PHP-FPM, в следующем разделе вы установите сервер MySQL и создадите новую базу данных и пользователя для Magento.
Обеспечьте безопасность вашей установки MySQL, выполнив команду ниже.
sudo mysql_secure_installationНиже вам будет предложено ответить на вопросы о конфигурациях сервера MySQL:
- Введите y, чтобы включить компонент VALIDATE PASSWORD.
- Введите 1, чтобы установить уровень сложности пароля на MEDIUM.
- Введите y, когда вас попросят изменить пароль root MySQL.
- Введите y, чтобы удалить пользователя по умолчанию.
- Введите y, чтобы запретить удаленный вход для пользователя root MySQL.
- Введите y снова, чтобы удалить тестовую базу данных по умолчанию из MySQL.
- Наконец, введите y, чтобы перезагрузить привилегии таблиц MySQL и применить изменения.
После настройки MySQL вам нужно создать новую базу данных и пользователя для Magento.
Войдите в сервер MySQL с помощью следующей команды. Введите свой пароль root MySQL, когда вас попросят.
sudo mysql -u root -pТеперь выполните следующие запросы, чтобы создать новую базу данных и пользователя для Magento. В этом примере вы создадите нового пользователя и базу данных ‘ magento ‘ с паролем ‘ M4gentoPassw0rd__ ‘.
Убедитесь, что вы изменили следующие данные на свои. Также пароль MySQL для Magento должен содержать специальный символ, число и заглавную букву.
CREATE DATABASE magento;
CREATE USER 'magento'@'localhost' IDENTIFIED BY 'M4gentoPassw0rd__';
GRANT ALL PRIVILEGES ON magento.* to 'magento'@'localhost';
FLUSH PRIVILEGES;
Затем выполните следующий запрос, чтобы проверить привилегии для пользователя ‘ magento ‘. Убедитесь, что ваш пользователь может получить доступ к базе данных ‘ magento ‘.
SHOW GRANTS FOR magento@localhost;Наконец, введите quit, чтобы выйти из сервера MySQL.

Установка Magento через командную строку
В этом разделе вы загрузите исходный код Magento и установите зависимости PHP с помощью Composer. Затем вы установите Magento с помощью командной строки. В конце вы сгенерируете crontab для Magento.
Перейдите в директорию ‘ /var/www ‘ и загрузите исходный код Magento с помощью следующей команды wget. Проверьте страницу GitHub Magento и получите URL последней версии Magento.
cd /var/www
wget https://github.com/magento/magento2/archive/refs/tags/2.4.7.tar.gzПосле завершения загрузки извлеките исходный код Magento и переименуйте извлеченную директорию в ‘magento2’. Таким образом, ваша установка Magento должна находиться по адресу ‘/var/www/magento2’.
tar -xf 2.4.7.tar.gz
mv magento2-* magento2Теперь выполните команду ниже, чтобы создать дополнительные директории для Composer и изменить владельца директории ‘ /var/www ‘ на пользователя ‘ www-data ‘.
sudo mkdir -p /var/www/{.config,.cache}
sudo chown -R www-data:www-data /var/wwwЗатем выполните следующую команду, чтобы предоставить пользователю ‘ www-data ‘ разрешение на чтение, запись и выполнение в директории ‘ /var/www/magento2 ‘.
sudo chmod u+rwx /var/www/magento2Затем перейдите в директорию ‘ /var/www/magento2 ‘ и установите зависимости PHP для Magento с помощью команды Composer ниже. Это обеспечит установку ваших зависимостей для Magento.
cd /var/www/magento2
sudo -u www-data composer installПосле установки зависимостей выполните команду ниже, чтобы предоставить пользователю ‘ www-data ‘ разрешение ‘ rwx ‘ на директории ‘ generated ‘ и ‘ var ‘ внутри корня веб-сайта Magento.
sudo chown -R www-data:www-data /var/www/magento2/var /var/www/magento2/generated
sudo chmod u+rwx /var/www/magento2/var /var/www/magento2/generated
sudo chmod g+rw /var/www/magento2/var /var/www/magento2/generatedТеперь выполните следующую команду, чтобы начать установку Magento. Убедитесь, что вы изменили URL-адреса, базу данных MySQL, пользователя администратора и пароль для вашей установки Magento.
sudo -u www-data bin/magento setup:install \
--base-url=http://howtoforge.local \
--db-host=localhost \
--db-name=magento2 \
--db-user=magento \
--db-password=M4gentoPassw0rd__ \
--admin-firstname=bob \
--admin-lastname=admin \
--admin-email=[email protected] \
--admin-user=bob \
--admin-password=BobAdm1nP4ssword \
--currency=USD \
--timezone=Europe/Amsterdam \
--use-rewrites=1 \
--session-save=redis \
--search-engine=opensearch \
--opensearch-host=127.0.0.1 \
--opensearch-port=9200 \
--opensearch-enable-auth=0 \
--opensearch-index-prefix=magento22 \
--opensearch-timeout=30Ниже вы можете увидеть, как начинается установка Magento:

После завершения вы увидите вывод ‘ Установка Magento завершена.’ и URL-адрес администратора для вашей установки Magento. Убедитесь, что вы сохранили сгенерированный URL для страницы администратора Magento.

Чтобы завершить установку Magento, выполните следующую команду, чтобы сгенерировать crontab для Magento и запустить индексацию для Magento.
sudo -u www-data bin/magento cron:install
sudo -u www-data bin/magento cron:run --group indexВы можете проверить список crontab для пользователя ‘www-data’ с помощью следующей команды:
crontab -u www-data -lВы можете увидеть ниже, что crontab для Magento сгенерирован.
Наконец, выполните команду ниже, чтобы очистить кэш вашей установки Magento. С этим вы завершили установку Magento, теперь вам нужно настроить веб-сервер Nginx.
sudo -u www-data bin/magento cache:cleanНастройка блока сервера Nginx
На этом этапе ваша установка Magento завершена, теперь вы создадите новый сервер Nginx для запуска вашей установки Magento. Убедитесь, что у вас есть доменное имя, указывающее на IP-адрес вашего сервера.
Создайте новую конфигурацию блока сервера Nginx ‘ /etc/nginx/sites-available/magento.conf ‘ с помощью редактора nano.
sudo nano /etc/nginx/sites-available/magento.confВставьте следующую конфигурацию и убедитесь, что вы изменили опцию server_name на ваше доменное имя Magento.
upstream fastcgi_backend {
server unix:/run/php/php8.3-fpm.sock;
}
server {
listen 80;
listen [::]:80;
server_name howtoforge.local;
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;
}Когда закончите, сохраните и выйдите из файла.
Теперь выполните команду ниже, чтобы активировать блок сервера ‘ magento.conf ‘ и проверить синтаксис вашего Nginx. Убедитесь, что вы получили вывод ‘ синтаксис в порядке - тест успешен ‘.
sudo ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/
sudo nginx -tНаконец, перезапустите службу Nginx с помощью следующей команды, чтобы применить вашу новую конфигурацию блока сервера. После выполнения команды ваша установка Magento будет доступна.
sudo systemctl restart nginxЗащита Magento с помощью HTTPS
Если вы запускаете Magento в публичном домене, вы должны защитить его с помощью HTTPS. В этом разделе вы защитите вашу установку Magento с помощью HTTPS через Certbot и Letsencrypt.
Установите Certbot и плагин Certbot Nginx с помощью следующей команды. Введите Y для подтверждения установки.
sudo apt install certbot python3-certbot-nginxПосле завершения установки выполните команду ниже, чтобы сгенерировать SSL/TLS сертификаты от Letsencrypt. Убедитесь, что вы изменили адрес электронной почты и доменное имя ниже на свои данные.
sudo certbot --nginx --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.localВаша установка Magento должна быть автоматически защищена с помощью HTTPS, когда процесс завершится. Ваши SSL/TLS сертификаты находятся в директории ‘ /etc/letsencrypt/live/domain.com ‘.
Доступ к Magento
Откройте веб-браузер и посетите ваше доменное имя Magento, например https://howtoforge.local. Если ваша установка успешна, вы увидите страницу индекса Magento по умолчанию, как показано ниже.

Теперь посетите URL-адрес администрирования Magento, который является https://howtoforge.local/admin_ze87mmj. Посмотрите процесс установки.
Введите своего пользователя администратора и пароль для Magento и нажмите Войти.

Если все прошло успешно, вы должны получить панель управления администратора Magento, как показано ниже:

Заключение
Поздравляем! Вы завершили установку Magento eCommerce на сервере Ubuntu 24.04. У вас установлена Magento с LEMP Stack (Linux, Nginx, MySQL и PHP-FPM), OpenSearch и Redis. Вы также защитили Magento с помощью HTTPS через Certbot и Letsencrypt.
Get new posts in your inbox
No spam. Unsubscribe anytime.