4.1.8 Установка Magento

The Host Magento 2 Banner

Magento 2 — это мощная CMS (Content Management System) и фреймворк для создания интернет-магазинов любого масштаба. Она написана на PHP, использует MySQL или MariaDB, поддерживает Composer и работает на любом веб-сервере, совместимом с PHP — Apache, Nginx, LiteSpeed.

Эта система предназначена для профессиональной eCommerce-разработки: поддерживает несколько витрин, валют и языков, интеграции с платёжными шлюзами и службами доставки, имеет масштабируемую архитектуру и развитую экосистему модулей.

Magento 2 ценят за:

  • модульную структуру и удобную систему расширений;
  • мощную панель администрирования с аналитикой и отчётами;
  • гибкую настройку SEO, URL и кэширования;
  • встроенные средства для интеграции с REST и GraphQL API;
  • высокую производительность и адаптивный дизайн.

Важно! Регулярно обновляйте CMS Magento 2 и установленные плагины. Это важно для защиты от уязвимостей и совместимости с новыми версиями PHP и MySQL. Перед обновлением всегда делайте резервную копию сайта и базы данных.

Подготовка сервера

Требования

  • Активная услуга Виртуального или Выделенного сервера
  • CPU: от 2 ядер
  • RAM: минимум 4 ГБ (рекомендуется 8 ГБ и более)
  • SSD от 40 ГБ
  • ОС — Ubuntu 22.04 / 24.04 LTS
  • PHP 8.2 или 8.3, MySQL 8.0 или MariaDB 10.6+
  • Root доступ или пользователь с правами sudo

Переменные окружения

  • DOMAIN_NAME — доменное имя сайта
  • DB_NAME, DB_USER, DB_PASSWORD — параметры базы данных
  • ADMIN_EMAIL, ADMIN_USER, ADMIN_PASS — учётные данные администратора
  • MAGENTO_PATH — путь к каталогу установки

Установка Magento 2

Установка зависимостей

Важно! Если ваш сервер управляется панелью ISPmanager, cPanel или Plesk — установку PHP и MySQL выполняйте средствами панели, без ручных команд.

Magento требует несколько расширений PHP и утилит для сборки и кэширования.

sudo apt update && sudo apt install php8.2 php8.2-fpm php8.2-cli php8.2-curl php8.2-mbstring php8.2-xml php8.2-intl php8.2-bcmath php8.2-zip php8.2-soap php8.2-gd php8.2-mysql unzip git composer -y

После установки убедитесь, что PHP-FPM запущен:

sudo systemctl status php8.2-fpm

Настройка MySQL

Создайте базу данных и пользователя для Magento:

sudo mysql -u root -p
CREATE DATABASE DB_NAME CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'DB_USER'@'localhost' IDENTIFIED BY 'DB_PASSWORD';
GRANT ALL PRIVILEGES ON DB_NAME.* TO 'DB_USER'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Загрузка и установка Magento 2

  1. Перейдите в каталог, где будет размещён сайт:

    cd /var/www && mkdir MAGENTO_PATH && cd MAGENTO_PATH
    
  2. Скачайте дистрибутив с помощью Composer:

    composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition .
    

    При первом запуске Composer запросит учётные данные Adobe Marketplace (они выдаются бесплатно).

  3. Установите Magento, указав все параметры:

    bin/magento setup:install \
    --base-url=https://DOMAIN_NAME/ \
    --db-host=localhost --db-name=DB_NAME --db-user=DB_USER --db-password=DB_PASSWORD \
    --admin-firstname=Admin --admin-lastname=User --admin-email=ADMIN_EMAIL \
    --admin-user=ADMIN_USER --admin-password=ADMIN_PASS \
    --language=ru_RU --currency=UAH --timezone=Europe/Kyiv --use-rewrites=1
    

После завершения команда выведет URL административной панели.

Настройка Nginx

Создайте файл конфигурации для сайта:

/etc/nginx/sites-available/magento.conf
server {
    listen 80;
    server_name DOMAIN_NAME;
    set $MAGE_ROOT /var/www/MAGENTO_PATH;
    include $MAGE_ROOT/nginx.conf.sample;
}

Активируйте конфигурацию:

sudo ln -s /etc/nginx/sites-available/magento.conf /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

Настройка дополнительных функций

Настройка конфигурации

Конфигурационный файл Magento находится по адресу: ~/www/DOMAIN_NAME/cfg/connect.inc.php Детальнее можете узнать в нашей инструкции.

Подключение SSL

Для работы по защищенному протоколу HTTPS используйте Let’s Encrypt или коммерческий SSL-сертификат

После установки SSL обновите базовый URL:

bin/magento setup:store-config:set --base-url-secure=https://DOMAIN_NAME/
bin/magento cache:flush

Оптимизация производительности

bin/magento deploy:mode:set production
bin/magento cache:enable
bin/magento indexer:reindex

Настройка прав доступа

sudo chown -R www-data:www-data /var/www/MAGENTO_PATH
sudo find /var/www/MAGENTO_PATH -type d -exec chmod 755 {} \;
sudo find /var/www/MAGENTO_PATH -type f -exec chmod 644 {} \;

Проверка работы

  1. Откройте в браузере https://DOMAIN_NAME — должна загрузиться главная страница магазина.
  2. Панель администратора доступна по адресу, который Magento вывела в конце установки, например: https://DOMAIN_NAME/admin_abcdef/
  3. Введите логин и пароль администратора.
  4. В панели управления перейдите в раздел Система → Кэширование, убедитесь, что все типы кэша активны.

Распространённые ошибки

Ошибка / Симптом Причина Решение Диагностика
Ошибка подключения к БД Неверные параметры DB_USER или DB_PASSWORD Проверьте файл app/etc/env.php tail -n 50 var/log/system.log
Белый экран при установке Недостаток памяти PHP Увеличьте memory_limit в php.ini до 1024M sudo systemctl restart php8.2-fpm
403 Forbidden Неверные права на файлы Примените команды chmod/chown из раздела выше sudo nginx -t
Ошибка компиляции после обновления Конфликт модулей Очистите кэш и выполните bin/magento setup:di:compile var/log/exception.log