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