Magento — это платформа электронной коммерции с открытым исходным кодом, которая предоставляет онлайн-торговцам гибкую систему корзин для покупок, а также контроль над внешним видом, содержимым и функциональностью их интернет-магазинов. Она также имеет большое сообщество разработчиков и пользователей, которые вносят вклад в ее текущую разработку и оказывают поддержку через форумы, документацию и другие ресурсы.
Magento поставляется в двух основных редакциях: Magento Open Source (ранее известная как Magento Community Edition) и Magento Commerce (ранее известная как Magento Enterprise Edition). Редакция Open Source бесплатна для использования и предоставляет базовые функции электронной коммерции, в то время как редакция Commerce является платной версией, которая включает в себя более продвинутые функции, такие как сегментация клиентов, целевые акции и расширенные маркетинговые инструменты.
В этом уроке мы покажем вам, как установить версию Open Source Magento 2.4.7 на ОС Ubuntu 24.04.
Перед началом установки вы можете проверить системные требования для установки Magento 2.4.7.

Шаг 1: Обновление операционной системы
Обновите Ubuntu 24.04 чтобы убедиться, что все существующие пакеты обновлены:
# apt update && apt upgrade
Шаг 2: Установка веб-сервера Apache
Чтобы установить веб-сервер Apache, выполните следующую команду:
# apt install apache2
Вы можете запустить службу Apache и настроить ее на запуск при загрузке, введя следующие команды:
# systemctl start apache2 # systemctl enable apache2
Проверьте статус службы Apache с помощью статус systemctl команда:
# systemctl status apache2
Вывод:
● apache2.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/apache2.service; enabled; preset: enabled)
Active: active (running)
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 22413 (apache2)
Tasks: 6 (limit: 2130)
Memory: 16.8M (peak: 17.0M)
CPU: 658ms
CGroup: /system.slice/apache2.service
├─22413 /usr/sbin/apache2 -k start
├─22468 /usr/sbin/apache2 -k start
├─22469 /usr/sbin/apache2 -k start
├─22470 /usr/sbin/apache2 -k start
Шаг 3: Установите PHP и расширения PHP
Magento 2.4.7 поставляется с поддержкой последней версии PHP 8.3, в то время как PHP 8.2 по-прежнему полностью поддерживается. По умолчанию PHP 8.3 включен в репозиторий Ubuntu 24.04 по умолчанию.
Установить PHP 8.3 и необходимые расширения PHP можно с помощью следующей команды:
# apt install php php-exif php-bz2 php-bcmath php-intl php-soap php-zip php-curl php-mbstring php-mysql php-gd php-xml
Проверьте, установлен ли PHP.
php -v
Output:
PHP 8.3.0-1ubuntu1 (cli) (built: Jan 19 2024 14:00:34) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.3.0, Copyright (c) Zend Technologies
with Zend OPcache v8.3.0-1ubuntu1, Copyright (c), by Zend Technologies
Обновить файл php.ini
Теперь пришло время увеличить значения в файле php.ini.
Открыть php.ini файл:
# nano /etc/php/8.3/apache2/php.ini
Измените следующие данные:
short_open_tag = On memory_limit = 512M upload_max_filesize = 128M max_execution_time = 3600
Тогда сохраните это php.ini файл.
После этого необходимо перезапустить веб-сервер Apache, чтобы конфигурация вступила в силу:
# systemctl restart apache2
Шаг 4: Установите MySQL и создайте базу данных
Вы можете установить сервер MySQL с помощью следующей команды:
# apt install mysql-server
Проверьте статус службы MySQL с помощью статус systemctl команда:
# systemctl status mysql
Вывод:
● mysql.service - MySQL Community Server
Loaded: loaded (/usr/lib/systemd/system/mysql.service; enabled; preset: enabled)
Active: active (running)
Process: 2907 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
Main PID: 2919 (mysqld)
Status: "Server is operational"
Tasks: 37 (limit: 2130)
Memory: 362.8M (peak: 379.2M)
CPU: 1.737s
CGroup: /system.slice/mysql.service
└─2919 /usr/sbin/mysqld
По умолчанию MySQL не защищен. Вы можете защитить MySQL с помощью mysql_безопасная_установка сценарий:
# mysql_secure_installation
Настройте его следующим образом:
- Set root password? [Y/n] Y - Remove anonymous users? [Y/n] Y - Disallow root login remotely? [Y/n] Y - Remove test database and access to it? [Y/n] Y - Reload privilege tables now? [Y/n] Y
Теперь выполните команду ниже, чтобы войти в оболочку MySQL.
# mysql -u root -p
После входа на сервер базы данных для создания базы данных, пользователя базы данных и предоставления всех привилегий пользователю базы данных выполните следующие команды:
mysql> CREATE DATABASE magentodb; mysql> CREATE USER 'magentouser'@'localhost' IDENTIFIED BY 'Str0ngPa$w0rd'; mysql> GRANT ALL ON magentodb.* TO 'magentouser'@'localhost'; mysql> FLUSH PRIVILEGES; mysql> EXIT
Шаг 5: Установка Elasticsearch
Начиная с Magento 2.4, все установки должны быть настроены на использование Elasticsearch в качестве поисковой системы по каталогам.
Импортируйте ключ Elasticsearch GPG:
# wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
Добавьте репозиторий Elasticsearch:
# echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
Обновить apt Менеджер пакетов и установка Elasticsearch:
# apt update && apt install elasticsearch
Затем запустите и включите службу:
# systemctl start elasticsearch # systemctl enable elasticsearch
Открой elasticsearch.yml файл:
# nano /etc/elasticsearch/elasticsearch.yml
Затем раскомментируйте строки и обновите значения:
node.name: "ubuntu" cluster.name: magento 2.4.7 network.host: 127.0.0.1 http.port: 9200 xpack.security.enabled: false
После этого необходимо перезапустить службу Elasticsearch, чтобы конфигурация вступила в силу:
# systemctl restart elasticsearch
Чтобы проверить правильность работы Elasticsearch, воспользуйтесь завиток команда:
# curl -X GET "localhost:9200/"
Если Elasticsearch работает правильно, результат должен быть таким:
{
"name" : "ubuntu",
"cluster_name" : "magento 2.4.7",
"cluster_uuid" : "nKzTibHRT_ahq6lCsWk6Ew",
"version" : {
"number" : "8.13.1",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "9287f29bba5e270bd51d557b8daccb7d118ba247",
"build_date" : "2024-03-29T10:05:29.787251984Z",
"build_snapshot" : false,
"lucene_version" : "9.10.0",
"minimum_wire_compatibility_version" : "7.17.0",
"minimum_index_compatibility_version" : "7.0.0"
},
"tagline" : "You Know, for Search"
}
Шаг 6: Установка Composer
Чтобы загрузить Composer, выполните следующую команду:
# curl -sS https://getcomposer.org/installer | php
Далее переместите файл композитора в папку /usr/local/bin путь:
# mv composer.phar /usr/local/bin/composer # chmod +x /usr/local/bin/composer
Проверьте установленную версию Composer:
# composer --version Output: Composer version 2.7.2 2024-03-11 17:12:18
Шаг 7: Установка Magento 2.4.7
В большинстве случаев рекомендуется устанавливать Magento с помощью API путем создания ключа доступа.
Для получения ключей доступа необходимо создать учетную запись в Magento.
Затем для генерации ключей доступа перейдите по ссылке:
Мой профиль > Торговая площадка > Мои продукты > Ключи доступа
После генерации ключей доступа выполните следующую команду для загрузки Magento 2.4.7:
# composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.7 /var/www/magento2
Имя пользователя : Твой Открытый ключ
Пароль : Твой Закрытый ключ
Перейдите к Magento каталог:
# cd /var/www/magento2
Chmod кэш и папка статического содержимого:
# find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
Измените владельца каталога magento2 на пользователя веб-сервера, а также разрешения:
# chown -R www-data:www-data /var/www/magento2 # chmod -R 755 /var/www/magento2
Теперь установите Magento с помощью команды composer, введите:
# bin/magento setup:install \ --base-url=http://your-domain.com \ --db-host=localhost \ --db-name=magentodb \ --db-user=magentouser \ --db-password='Str0ngPa$w0rd' \ --admin-firstname=Admin \ --admin-lastname=User \ [email protected] \ --admin-user=admin \ --admin-password=admin123 \ --language=en_US \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1
После процесса установки вы увидите ссылку администратора вашего сайта Magento.
[SUCCESS]: Magento installation complete. [SUCCESS]: Magento Admin URI: /admin_nuqh2y Nothing to import.
Шаг 8: Настройка Apache для Magento 2.4.7
Выполните команду ниже, чтобы создать новый файл VirtualHost в /etc/apache2/sites-available/ каталог:
# nano /etc/apache2/sites-available/magento2.conf
Вставьте содержимое, как показано ниже:
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/magento2/pub
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory /var/www/magento2/>
AllowOverride All
</Directory>
ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common
</VirtualHost>
Не забудьте заменить your-domain.com с доменным именем вашего сервера.
Сохраните и выйдите из файла конфигурации.
Далее выполните следующую команду для включения переписать модуль:
# a2enmod rewrite
Чтобы включить этот сайт, выполните команду:
# a2ensite magento2.conf
Чтобы изменения вступили в силу, перезапустите веб-сервер Apache:
# systemctl restart apache2
Шаг 9: Получите доступ к приложению Magento 2.4.7
Откройте браузер и введите свой домен. http://your-domain.com
