Установка Magento · 7 min read · Oct 20, 2025
Как установить Magento 2 с Nginx и SSL Let's Encrypt на Ubuntu 20.04 LTS

Magento — это широко используемое программное обеспечение с открытым исходным кодом для электронной коммерции и система управления контентом для веб-сайтов электронной коммерции, основанная на PHP Zend Framework. Она использует MySQL или MariaDB в качестве базы данных. Разработка Magento началась в 2008 году компанией Varien.
В этом руководстве мы покажем вам шаг за шагом, как установить Magento 2 на последней версии Ubuntu 20.04. Мы установим Magento под стеком LEMP, веб-сервером Nginx, PHP-FPM 7.3 и сервером MariaDB.
Требования
Для этого руководства мы установим Magento 2 на систему Ubuntu 20.04 с 2 ГБ ОЗУ, 50 ГБ свободного дискового пространства и 2 ЦП.
Что мы будем делать?
- Установить веб-сервер Nginx
- Установить и настроить PHP-FPM 7.3
- Установить и настроить сервер MySQL
- Установить PHP Composer
- Скачать и установить Magento
- Сгенерировать SSL Let’s Encrypt
- Настроить виртуальный хост Nginx для Magento
- Постустановка Magento
Шаг 1 - Установка веб-сервера Nginx
Сначала мы установим веб-сервер Nginx на систему Ubuntu 20.04.
Установите Nginx, используя команду apt ниже.
sudo apt install nginxПосле завершения установки запустите службу Nginx и добавьте ее в автозагрузку системы.
systemctl start nginx
systemctl enable nginxПосле этого проверьте статус службы Nginx, используя следующую команду.
systemctl status nginxВеб-сервер Nginx работает на сервере Ubuntu 20.04.

Далее мы откроем порты HTTP и HTTPS на нашей системе Ubuntu.
Запустите команду ufw ниже.
for svc in ssh http https
do
ufw allow $svc
doneВ результате службы SSH, HTTP и HTTPS были добавлены в правило брандмауэра ufw.
Теперь запустите команду для включения брандмауэра ufw.
ufw enableВведите ‘y’ и нажмите Enter, и вы включили брандмауэр ufw.
Шаг 2 - Установка и настройка PHP-FPM 7.3
После установки веб-сервера Nginx мы установим PHP-FPM на наш сервер Ubuntu 20.04.
По умолчанию Ubuntu 20.04 поставляется с самой новой версией PHP/PHP-FPM 7.4. Но на данный момент Magento работает только с PHP/PHP-FPM 7.3. И на этом шаге мы установим PHP-FPM 7.3 из PPA-репозитория.
Перед тем как продолжить, установите пакет ‘software-properties-common’ и добавьте PPA-репозиторий для PHP 7.3, используя следующую команду.
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/phpКоманда ‘add-apt-repository’ автоматически обновит все репозитории на системе.
Теперь установите пакеты PHP-FPM 7.3 из PPA-репозитория, используя команду apt ниже.
sudo apt install php7.3-fpm php7.3-common php7.3-curl php7.3-cli php7.3-mysql php7.3-gd php7.3-xml php7.3-json php7.3-intl php-pear php7.3-dev php7.3-common php7.3-mbstring php7.3-zip php7.3-soap php7.3-bcmath php7.3-opcache -yУстановка PHP-FPM 7.3 завершена.
После этого перейдите в директорию ‘/etc/php/7.3’ и отредактируйте конфигурацию ‘php.ini’ для PHP-FPM.
cd /etc/php/7.3/
vim fpm/php.iniРаскомментируйте и измените конфигурацию следующим образом.
date.timezone = Asia/Singapore
memory_limit = 1G
max_execution_time = 1800
zlib.output_compression = On
cgi.fix_pathinfo = 0
opcache.enable=1
opcache.save_comments = 1Сохраните и закройте.
Далее запустите службу PHP-FPM и добавьте ее в автозагрузку системы.
systemctl start php7.3-fpm
systemctl enable php7.3-fpm
Служба PHP-FPM работает, проверьте это с помощью команды ниже.
ss -xa | grep php
systemctl status php7.3-fpmВ результате PHP-FPM работает на сервере Ubuntu 20.04, он работает под сокетом ‘/run/php/php7.3-fpm.sock’.

Шаг 3 - Установка и настройка сервера MariaDB
На этом шаге мы установим сервер базы данных MariaDB, настроим пароль по умолчанию для root MariaDB и создадим новую базу данных и пользователя для Magento.
Установите пакеты сервера MariaDB на Ubuntu 20.04, используя команду apt ниже.
sudo apt install mariadb-serverПосле завершения установки запустите службу MariaDB и добавьте ее в автозагрузку системы.
systemctl start mariadb
systemctl enable mariadbСлужба MariaDB работает.
Далее мы настроим пароль root для MariaDB с помощью утилиты ‘mysql_secure_installation’.
Запустите команду ‘mysql_secure_installation’ ниже.
mysql_secure_installationВведите свой надежный пароль для пользователя root MariaDB и введите ‘Y’ для всех конфигураций.
Установить пароль root? [Y/n] Y
Удалить анонимных пользователей? [Y/n] Y
Запретить удаленный вход root? [Y/n] Y
Удалить тестовую базу данных и доступ к ней? [Y/n] Y
Перезагрузить таблицы привилегий сейчас? [Y/n] YВ результате пароль root для MariaDB был настроен.

Далее мы создадим новую базу данных и пользователя для установки Magento.
Войдите в оболочку MariaDB/MySQL, используя команду mysql ниже.
mysql -u root -pТеперь создайте новую базу данных для нашей установки Magento. Создайте базу данных ‘magentodb’ и пользователя ‘magentouser’ с паролем ‘magentodbpass’.
Запустите запросы MySQL ниже.
create database magentodb;
create user magentouser@'localhost' identified by 'magentopassdb';
grant all privileges on magentodb.* to magentouser@'localhost';
flush privileges;Теперь введите ‘exit’, чтобы выйти из оболочки MySQL.

В результате новая база данных и пользователь для установки Magento были созданы.
Шаг 4 - Установка Composer
Composer — это менеджер зависимостей для PHP. Это пакетный менеджер на уровне приложения для PHP, который позволяет вам загружать дополнительные зависимости и библиотеки PHP для вашего проекта PHP.
На этом шаге мы установим PHP Composer из репозитория Ubuntu.
Установите Composer, используя команду apt ниже.
sudo apt install composer -yПосле завершения установки проверьте версию composer ниже.
composer --versionНиже приведен ответ, который вы получите.
Composer 1.10.1 2020-03-13 20:34:27Как видно, Composer 1.10 был установлен на сервере Ubuntu 20.04.
Шаг 5 - Скачивание и установка Magento 2
На этом шаге мы загрузим и установим Magento 2 и все необходимые PHP пакеты с помощью Composer.
Сначала перейдите в директорию ‘/var/www/‘ и загрузите исходный код Magento 2.3.5 CE (Community Edition) с помощью команды wget ниже.
cd /var/www/
wget -q https://github.com/magento/magento2/archive/2.3.5.tar.gzПосле завершения извлеките исходный код Magento и переименуйте извлеченную директорию в ‘magento2’.
tar -xf 2.3.5.tar.gz
mv magento2-*/ magento2/Далее перейдите в директорию установки Magento ‘/var/www/magento2’ и установите все зависимости PHP для Magento с помощью команды Composer ниже.
cd /var/www/magento2/
composer install
После завершения установки исправьте права собственности директории установки Magento 2 на пользователя ‘www-data’.
chown -R www-data:www-data /var/www/magento2В результате установка Magento 2 и всех зависимостей пакетов завершена.
Шаг 6 - Генерация SSL Let’s Encrypt
Для этого руководства мы защитим установку Magento 2 с помощью SSL Let’s Encrypt. И на этом шаге мы сгенерируем SSL Let’s Encrypt с помощью команды certbot. Также убедитесь, что ваше доменное имя разрешается в IP-адрес сервера.
Установите инструмент certbot, используя команду apt ниже.
sudo apt install certbotПосле завершения установки остановите службу Nginx.
systemctl stop nginx
certbot certonly --standalone --agree-tos --no-eff-email --email [email protected] -d magento.hakase-labs.ioПосле завершения вы получите свои SSL сертификаты в директории ‘/etc/letsencrypt/live/magento.your-domain.com’.
В результате SSL Let’s Encrypt для установки Magento 2 был сгенерирован.
Шаг 7 - Настройка виртуального хоста Nginx для Magento 2
На этом шаге мы добавим новую конфигурацию виртуального хоста Nginx для Magento 2.
Перейдите в директорию ‘/etc/nginx/sites-available/‘ и создайте новую конфигурацию ‘magento’ с помощью редактора vim.
cd /etc/nginx/sites-available/
vim magentoВставьте следующую конфигурацию в него.
upstream fastcgi_backend {
server unix:/run/php/php7.3-fpm.sock;
}
server {
listen 80;
listen [::]:80;
server_name magento.hakase-labs.io;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name magento.hakase-labs.io;
ssl_certificate /etc/letsencrypt/live/magento.hakase-labs.io/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/magento.hakase-labs.io/privkey.pem;
set $MAGE_ROOT /var/www/magento2;
set $MAGE_MODE developer;
include /var/www/magento2/nginx.conf.sample;
}Сохраните и закройте.
Далее активируйте виртуальный хост Magento Nginx и протестируйте конфигурацию nginx, убедитесь, что ошибок нет.
ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
ginx -tТеперь перезапустите службу Nginx с помощью следующей команды.
systemctl restart nginxВ результате конфигурация виртуального хоста Nginx для Magento 2 была создана и активирована.

Шаг 8 - Постустановка Magento
Откройте веб-браузер и введите доменное имя вашей установки Magento в адресной строке.
https://magento.hakase-labs.io/
Теперь вы будете перенаправлены на защищенное соединение HTTPS, и вы получите страницу приветствия Magento и Условия обслуживания.

Нажмите кнопку ‘Согласиться и настроить Magento‘, чтобы продолжить.
На странице ‘Проверка готовности’ убедитесь, что все требования зеленые, и нажмите кнопку ‘Далее‘.

Введите данные базы данных MariaDB и пользователя, которые мы создали выше, и нажмите кнопку ‘Далее‘.

Для ‘Веб конфигурации’ измените все протоколы HTTP на HTTPS и убедитесь, что изменен ‘Адрес администратора Magento’.

Теперь нажмите ‘Расширенные параметры’ и отметьте все параметры HTTPS, затем снимите отметку с параметра ‘Apache Rewrites’ и снова нажмите кнопку ‘Далее‘.
Далее, в конфигурации ‘Настройка вашего магазина’ Magento оставьте все по умолчанию и нажмите кнопку ‘Далее‘.

Теперь введите данные администратора, электронную почту и пароль. Затем нажмите кнопку ‘Далее‘.

Нажмите кнопку ‘Установить сейчас‘, чтобы установить ваш магазин Magento 2.

Теперь убедитесь, что установка прошла без ошибок.

После завершения установки вы получите страницу ‘Успех‘, как показано ниже.

Нажмите ‘Запустить админку Magento‘, чтобы войти в панель управления администратором Magento.

Теперь введите своего пользователя администратора Magento и пароль, затем нажмите ‘Войти‘, и вы получите панель управления администратором Magento, как показано ниже.

Для главной индексной страницы Magento откройте новую вкладку и введите свое доменное имя в адресной строке.
Ниже представлена главная индексная страница Magento.

В результате установка Magento 2 завершена.
Далее вернитесь в оболочку сервера, и мы настроим Cron Magento и уберем права на запись для некоторых директорий установки Magento.
Чтобы настроить Cron Magento, выполните команду ниже.
cd /var/www/magento2
sudo -u www-data php bin/magento cron:install --forceCron Magento будет работать под пользователем ‘www-data’, проверьте это с помощью следующей команды.
crontab -u www-data -lВ результате Cron Magento был добавлен в систему.

Далее нам нужно удалить права на запись для директории ‘/var/www/magento2/app/etc’.
Выполните команду chmod ниже.
chmod u-w /var/www/magento2/app/etcИ, наконец, установка Magento 2 с веб-сервером Nginx, сервером MariaDB, PHP-FPM 7.3 на последней версии Ubuntu 20.04 была успешно завершена.
Ссылки
Get new posts in your inbox
No spam. Unsubscribe anytime.