news
Serverspace в «Рейтинге провайдеров IaaS Enterprise 2023» от Market.CNews
АБ
29 июня 2020
Обновлено 16 августа 2023

Как установить Magento2 на Ubuntu 18.04

Ubuntu

Magento — одна из лучших платформ для электронной коммерции. В 2015 году команда Magento представила вторую версию своей платформы, Magento2, а 28 апреля 2020 года вышел очередной релиз Magento 2.3.5, включающий в себя более 180 функциональных исправлений и более 25 улучшений безопасности.

Эта статья поможет вам установить самую свежую версию Magento2 на виртуальный сервер под управлением ОС Ubuntu 18.04.

Для установки вам потребуется:

  • виртуальный сервер с Ubuntu 18.04. Вы можете создать его в Serverspace бесплатно, воспользовавшись тестовым балансом, который выдается автоматически сразу после регистрации;
  • установленная программа PuTTY для работы с консолью.

Установка LAMP

Для начала откроем консоль, войдем на сервер и обновим пакеты Ubuntu 18.04:

sudo apt update
sudo apt-get update

После загрузки всех обновлений можем приступать к установке LAMP (Linux, Apache, MySQL, PHP). Начнем с установки веб-сервера Apache:

sudo apt install apache2 wget unzip

Далее установим PHP и его модули:

sudo apt install php libapache2-mod-php php-mysql php-dom php-simplexml php-pear

sudo apt install php-curl php-intl php-xsl php-mbstring php-zip php-xml php-soap php-bcmath

Затем установим систему управления базами данных MySQL:

sudo apt install mysql-server

После завершения установки запустим MySQL:

sudo systemctl start mysql.service

и скрипт mysql_secure_installation, чтобы создать пароль для учетной записи root и защитить сервер MySQL:

sudo mysql_secure_installation

Затем чтобы обезопасить сервер, скрипт задаст нам несколько вопросов:

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y
Success.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y
Success.

Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y
- Dropping test database...
Success.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y
Success.

Заходим в MySql:
sudo mysql -u root -p
Создаем необходимую дата-базу Magento 2:
CREATE DATABASE magento2
Затем создаем пользователя и пароль:
CREATE USER 'userr'@'localhost' IDENTIFIED BY 'PASSWORD';
Даем пользователю права к нашей дата-базе Magento 2:
GRANT ALL ON magento2.* TO 'userr'@'localhost' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
Сохраним привилегии и выйдем из MySql:
FLUSH PRIVILEGES;
EXIT;

Установка LAMP завершена. Переходим к следующему шагу.

Настройка виртуального хоста Apache2

Создадим новый файл magento2.conf:
sudo nano /etc/apache2/sites-available/magento2.conf
Скопируем и вставим следующее содержимое в файл выше. Помните, что вы должны изменить domain.com на ваш домен.

ServerAdmin admin@domain.com
DocumentRoot /var/www/html/magento2/
ServerName domain.com
ServerAlias www.domain.com

Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

Убедимся, что rewrite mod включен:
sudo a2ensite magento2.conf
sudo a2enmod rewrite

Увеличим доступные значения в файле php.ini.:
sudo nano /etc/php/7.2/apache2/php.ini
Изменим следующие значения в открывшимся файле. Чтобы проще найти нужную строку, используйте Ctrl+W.
file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 512M
upload_max_filesize = 128M
max_execution_time = 3600

Сохраняем файл и выходим из него.

Перезапустим Apache2:
sudo systemctl restart apache2.service

Установка PHP Composer

Чтобы установить пакетный менеджер PHP Composer, выполним следующие команды:

sudo apt install wget php-cli php-zip unzip

Теперь, когда на нашем компьютере установлен PHP cli, мы можем скачать установщик composer:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

Далее нам нужно проверить целостность данных скрипта:

HASH="$(wget -q -O - https://composer.github.io/installer.sig)"

Теперь выполним следующую команду, чтобы убедиться, что сценарий установки не поврежден:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Установим Composer в каталог / usr / local / bin:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Проверим установился ли Composer:

composer

Если установка прошла успешно нам вылезет следующий текст:
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ / __ `__ / __ / __ / ___/ _ / ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
____/____/_/ /_/ /_/ .___/____/____/___/_/
/_/
Composer version 1.8.5 2019-04-09 17:46:47

Usage:
command [options] [arguments]

На этом все. Приступаем к скачиванию Magento2.

Скачивание архива с Magento2

Зайдем в нужную директорию:
cd /var/www/
Скачаем необходимый нам файл:
wget https://github.com/magento/magento2/archive/2.3.zip
Проверим создался ли наш файл:
dir
Если мы правильно скачали файл,то ответ должен быть таким:
2.3 zip
Распакуем наш файл:
unzip 2.3.zip
Проверим создался ли новый файл:
dir
Если файл распаковался,то ответ должен быть таким:
/var/www/maagento2
Установим Composer:
composer install
Скачиваем нужную нам версию PHP:
sudo apt-get install php7.2-gd
Затем установим разрешения для файлов для их запуска с веб-сервером Apache:

sudo chown -R www-data.www-data /var/www/magento2
sudo chmod -R 755 /var/www/magento2
sudo chmod -R 777 /var/www/magento2/{pub,var}

Теперь Composer установлен на ваш сервер.

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

Войдем в MySQL с правами администратора:

mysql -u root -p

Создадим базу данных. Вместо “magento2_db” укажите свое название базы данных:

CREATE DATABASE magento2_db;

и пользователя базы данных. Вместо “magento2_usr” укажите желаемое имя пользователя базы данных, а вместо “pa$$word” — желаемый пароль от базы данных:

CREATE USER magento2_usr@'localhost' IDENTIFIED BY 'pa$$word';

Далее предоставим пользователю необходимые привилегии. Не забудьте поставить свои значения вместо “magento2_db” и “magento2_usr”:

GRANT ALL ON magento2_db.* TO magento2_usr@'localhost';

Актуализируем внесенные изменения, выполнив команду:

FLUSH PRIVILEGES;

Изменения вступили в силу. Выходим из MySQL командой:

quit

Создание виртуального хоста Apache

Создадим конфигурационный файл Apache для нашего сайта Magento2. Вместо “domain.com” укажите свой домен:

sudo vim /etc/apache2/sites-available/domain.com.conf

В открывшийся файл добавим следующие строки (вместо “domain.com” укажите свой домен):

VirtualHost *:80>
DocumentRoot /var/www/magento2
ServerName domain.com
<Directory /var/www/magento2>
Allowoverride all
</Directory>
</VirtualHost>

Сохраним и закроем файл. Затем включим виртуальный хост следующей командой (вместо “example.by” укажите свой домен):

sudo a2ensite domain.com

Также включим модуль перезаписи Apache, который рекомендует Magento:

sudo a2enmod rewrite

Для внесения выполненных изменений перезапустим сервер Apache:

sudo systemcl restart apache2.service

Установка Magento2

Теперь приступаем к главному — установке Magento2. Введем наш домен в браузере и он перенаправит нас на страницу установки:

http://domain.com

Соглашаемся с лицензионным соглашением и нажимаем на кнопку “Agree and Setup Magento”:

Соглашаемся с лицензионным соглашением
Скриншот №1. Соглашаемся с лицензионным соглашением.

Теперь нажимаем на кнопку “Start Readiness Test” — Magento запустит проверку на наличие необходимого программного обеспечения на сервере. После завершения нажимаем “Next”. Если проверка выявила отсутствие каких-либо компонентов, попробуйте установить их еще раз и нажать “Try again”:

Проверка системных требований
Скриншот №2. Проверка системных требований.

Затем вводим сведения о базе данных, которую мы создавали ранее:

Ввод сведений о базе данных
Скриншот №3. Ввод сведений о базе данных.

После этого установщик отобразит адрес вашего сайта и сгенерирует случайную ссылку для входа в административную панель. Вы можете изменить ее по своему усмотрению:

Адрес вашего сайта и адрес входа в панель управления
Скриншот №4. Адрес вашего сайта и адрес входа в панель управления.

Создадим пользователя с правами администратора для входа в панель управления Magento2:

Создание пользователя с правами администратора
Скриншот №5. Создание пользователя с правами администратора.

Теперь Magento2 готов к установке. Нажимаем на кнопку “Install now”, чтобы начать установку и дожидаемся ее завершения:

Установка Magento.
Скриншот №6. Установка Magento.

После завершения установки появится следующий экран:

Установка Magento завершена
Скриншот №7. Установка Magento завершена.

Далее откроется окно авторизации в панели управления Magento2. Выполните вход, используя логин и пароль, сформированные ранее:

Авторизация в панели управления Magento2
Скриншот №8. Авторизация в панели управления Magento2.

Процесс завершен. Поздравляем с успешной установкой Magento2 на вашем виртуальном сервере!

Настройка Magento2

В заключение рекомендуем вам настроить автоматическое выполнение некоторых задач с помощью планировщика задач Cron, который сможет запускать повторную индексацию, обновлять курсы валют, отправлять автоматические письма, генерировать файл Sitemap и так далее. Для этого откроем файл CronTab, в котором содержатся задания для Cron:

crontab -e

И в конце файла добавим такие строки:

* * * * * www-data php /var/www/magento2/bin/magento cron:run
* * * * * www-data php /var/www/magento2/update/cron.php
* * * * * www-data php /var/www/magento2/bin/magento setup:cron:run

, где www-data — это пользователь, под которым работает Apache, а /var/www/magento2/ — каталог с Magento2. Для завершения сохраняем внесенные изменения и выходим из редактирования файла.

Оценка:
5 из 5
Аverage rating : 5
Оценок: 3
191028 Санкт-Петербург Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700 300
ООО «ИТГЛОБАЛКОМ ЛАБС»
700 300

Вам также может быть интересно...