Установка Magento · 5 min read · Oct 19, 2025
Как установить Magento с Nginx на Ubuntu 16.04
Magento — это программное обеспечение с открытым исходным кодом для электронной коммерции и система управления контентом для веб-сайтов электронной коммерции, основанная на PHP Zend Framework. Она использует MySQL или MariaDB в качестве базы данных. Разработка Magento началась в 2008 году компанией Varien.
В этом руководстве я покажу вам, как установить Magento 2 с Nginx, PHP 7.0 в режиме FPM и MariaDB в качестве базы данных. Я буду использовать Ubuntu 16.04 (Xenial Xerus) в качестве операционной системы сервера. Если у вас еще нет минимальной настройки сервера, пожалуйста, посмотрите это руководство, чтобы получить правильную базовую настройку.
Предварительные условия:
- Ubuntu 16.04 - 64 бита.
- Права root.
Шаг 1 - Установка Nginx
Войдите на свой сервер Ubuntu с учетной записью root (например, по SSH) и обновите репозиторий.
sudo su
apt-get updateЗатем установите Nginx:
apt-get install nginx -yПроверьте, что nginx установлен правильно, проверив порт:
netstat -plntu | grep 80Шаг 2 - Установка и настройка PHP-FPM
На этом шаге мы установим PHP 7 в режиме PHP-FPM. Кроме того, мы установим следующие расширения PHP, которые требуются для Magento.
- php-gd
- php-mhash
- php-mcrypt
- php-xsl
- php-pear
- php-soap
Установите пакеты с помощью команды apt ниже:
apt-get install php7.0-fpm php7.0-mcrypt php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0-json php7.0-intl php-pear php7.0-dev php7.0-common php7.0-mbstring php7.0-zip php-soap libcurl3 curl -yТеперь отредактируйте файлы php.ini для fpm и cli.
vim /etc/php/7.0/fpm/php.ini
vim /etc/php/7.0/cli/php.iniи увеличьте лимит памяти и время выполнения PHP, а также включите сжатие zlib, добавив следующие строки в конец файлов:
memory_limit = 512M
max_execution_time = 1800
zlib.output_compression = OnСохраните файл и выйдите из редактора.
Перезапустите службу PHP-FPM, чтобы применить изменения конфигурации:
systemctl restart php7.0-fpmШаг 3 - Установка и настройка MariaDB
Я буду использовать MariaDB вместо MySQL здесь. Установите MariaDB с помощью команды apt:
apt-get install mariadb-server mariadb-client -yУстановите пароль для пользователя root MariaDB с помощью этой команды:
mysqladmin -u root password mypasswordmysql_secure_installation
Установить пароль root? [Y/n] Y
Новый пароль:
Повторите новый пароль: <-- Введите новый пароль
Удалить анонимных пользователей? [Y/n] Y
... Успех!
Запретить удаленный вход root? [Y/n] Y
... Успех!
Удалить тестовую базу данных и доступ к ней? [Y/n] Y
Перезагрузить таблицы привилегий сейчас? [Y/n] Y
... Успех!Затем подключитесь к оболочке MySQL (оболочка MariaDB запускается с помощью команды mysql) с вашим паролем root, создайте базу данных с именем ‘magentodb‘ и пользователя ‘magentouser‘ с паролем ‘magentouser@‘. Пожалуйста, выберите надежный пароль для ‘magentouser’ на вашем сервере, а не тот, который я использовал в этом примере!
Войдите в оболочку MySQL:
mysql -u root -pВ оболочке MySQL выполните следующие команды:
create database magentodb;
create user magentouser@localhost identified by 'magentouser@';
grant all privileges on magentodb.* to magentouser@localhost identified by 'magentouser@';
flush privileges;
\q
База данных создана и настроена.
Шаг 4 - Установка и настройка Magento 2
Мы установим Magento в директории ‘/var/www/magento2’. Для установки Magento нам нужен PHP composer.
- Установка php composer
Перейдите в корневую директорию, загрузите файл установщика composer с помощью curl и запустите его для установки composer.
cd ~/
curl -sS https://getcomposer.org/installer | phpПереместите файл ‘composer.phar’ в директорию bin вашего сервера и переименуйте его в composer, чтобы его можно было легко выполнить:
mv composer.phar /usr/bin/composerТеперь проверьте, что команда composer работает:
composer -v- Загрузка и извлечение Magento 2
Перейдите в веб-директорию ‘/var/www/‘ и загрузите Magento из его репозитория на Github, затем распакуйте загруженный файл tar.gz:
cd /var/www/
wget https://github.com/magento/magento2/archive/2.0.7.tar.gz
tar -xzvf 2.0.7.tar.gz
mv magento2-2.0.7/ magento2/Готово.
- Настройка ключа Magento
Зарегистрируйте учетную запись на сайте Magento repo.magento.com. Эта учетная запись необходима для использования Magento и магазина composer Magento. Когда вы зарегистрируетесь, перейдите на вкладку ‘Моя учетная запись > Разработчик > Безопасные ключи‘, затем сгенерируйте свои ключи.

- Установка сторонних компонентов для Magento
Перейдите в директорию установки Magento 2 ‘/var/www/magento2’ и выполните команду composer:
cd /var/www/magento2/
composer install -vВам будет предложено ввести аутентификацию Magento, используйте публичный ключ в качестве имени пользователя и приватный ключ в качестве пароля.
- Настройка виртуального хоста Nginx
Magento предлагает готовую конфигурацию виртуального хоста Nginx, поэтому нам просто нужно включить ее в нашу конфигурацию.
Перейдите в директорию виртуального хоста Nginx и создайте новый файл с именем magento:
cd /etc/nginx/sites-available/
vim magentoВставьте конфигурацию ниже:
upstream fastcgi_backend {
server unix:/run/php/php7.0-fpm.sock;
}
server {
listen 80;
server_name www.newmagento.com;
set $MAGE_ROOT /var/www/magento2;
set $MAGE_MODE developer;
include /var/www/magento2/nginx.conf.sample;
}Замените www.newmagento.com на доменное имя веб-сайта, которое будет использовать ваш магазин.
Сохраните и выйдите.
Теперь активируйте виртуальный хост и перезапустите Nginx:
ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
systemctl restart nginx- Установка Magento
Мы установим Magento через командную строку. В директории Magento ‘/var/www/magento2/‘ есть бинарный файл с именем ‘magento’, который используется для установки и управления Magento. Выполните команду:
bin/magento setup:install --backend-frontname="adminlogin" \
--key="biY8vdWx4w8KV5Q59380Fejy36l6ssUb" \
--db-host="localhost" \
--db-name="magentodb" \
--db-user="magentouser" \
--db-password="magentouser@" \
--language="en_US" \
--currency="USD" \
--timezone="America/New_York" \
--use-rewrites=1 \
--use-secure=0 \
--base-url="http://www.newmagento.com" \
--base-url-secure="https://www.newmagento.com" \
--admin-user=adminuser \
--admin-password=admin123@ \
--admin-email="[email protected]" \
--admin-firstname=admin \
--admin-lastname=user \
--cleanup-databasebackend-frontname = страница администратора для нашего сайта Magento, мы используем ‘adminlogin‘.
Key = наши ключи Magento, мы можем сгенерировать их или найти случайно на http://randomkeygen.com/.
Base-url = убедитесь, что он совпадает с конфигурацией виртуального хоста.
В конце процедуры установки вы должны увидеть эти строки:
[SUCCESS]: Установка Magento завершена.
[SUCCESS]: URI администратора Magento: /adminloginПеред тем как протестировать установку Magento, убедитесь, что владелец веб-директории ‘www-data’, затем перезапустите nginx.
cd /var/www/magento2/
chmod 700 /var/www/magento2/app/etc
chown -R www-data:www-data .systemctl restart nginxТеперь откройте домен Magento в вашем браузере: *
В моем случае доменное имя: www.newmagento.com.

Попробуйте войти в панель управления администратором Magento: *

**

Примечание:
Если вы получите ошибку о недостающем cronjob индексатора Magento, вы можете решить эту проблему, добавив следующий cronjob на ваш сервер:
crontab -u www-data -eДобавьте следующие строки:
* * * * * /usr/bin/php /var/www/magento2/bin/magento cron:run | grep -v "Ran jobs by schedule" >> /var/www/magento2/var/log/magento.cron.log
* * * * * /usr/bin/php /var/www/magento2/update/cron.php >> /var/www/magento2/var/log/update.cron.log
* * * * * /usr/bin/php /var/www/magento2/bin/magento setup:cron:run >> /var/www/magento2/var/log/setup.cron.logСохраните и выйдите.
Magento 2 с Nginx и PHP-FPM 7 на Ubuntu 16.04 теперь установлен.
Заключение
Magento — это платформа электронной коммерции с открытым исходным кодом, основанная на PHP Zend Framework. Это сложное программное обеспечение для электронной коммерции, которое поможет вам в вашем онлайн-бизнесе. Magento использует архитектуру MVC (Model-View-Controller) и MySQL или MariaDB в качестве базы данных. Magento легко установить, мы можем установить его с помощью веб-сервера Nginx или Apache. Magento стал одним из самых популярных программных обеспечений для электронной коммерции в Интернете и используется многими успешными веб-сайтами магазинов по всему миру.
Get new posts in your inbox
No spam. Unsubscribe anytime.