Хотите узнать, как выполнить установку Magento в Ubuntu Linux? В этом руководстве мы покажем вам, как установить, настроить и получить доступ к Magento CMS на компьютере с Ubuntu Linux.

• Ubuntu Linux версии 18.04
• Magento версия 2.3.0

Список оборудования:

В следующем разделе представлен список оборудования, использованного для создания этого урока Magento.

Все вышеперечисленное оборудование можно найти на сайте Amazon.

Учебник по Magento:

На этой странице мы предлагаем быстрый доступ к списку учебных пособий, связанных с Magento.

Учебное пособие - NTP на Ubuntu Linux

Во-первых, мы собираемся настроить систему для использования правильной даты и времени, используя NTP.

На консоли Linux используйте следующие команды, чтобы установить правильный часовой пояс.

# dpkg-reconfigure tzdata

Установите пакет Ntpdate и немедленно установите правильные дату и время.

# apt-get update
# apt-get install ntpdate
# ntpdate pool.ntp.br

Команда Ntpdate использовалась для установки правильной даты и времени с помощью сервера: pool.ntp.br

Давайте установим службу NTP.

# apt-get install ntp

NTP - это сервис, который будет обновлять наш сервер.

Используйте команду date для проверки даты и времени, настроенных на вашем Ubuntu Linux.

# date

Если система показала правильную дату и время, это означает, что вы выполнили все шаги правильно.

Учебник - Установка MySQL на Ubuntu Linux

Теперь мы можем приступить к установке службы базы данных.

На консоли Linux используйте следующие команды для установки необходимых пакетов.

# apt-get update
# apt-get install mysql-server mysql-client

После завершения установки используйте следующую команду для доступа к серверу базы данных MySQL.

# mysql -u root -p

Используйте следующую команду SQL для создания базы данных с именем Magento.

CREATE DATABASE magento CHARACTER SET UTF8 COLLATE UTF8_BIN;

Используйте следующую команду SQL для создания пользователя базы данных с именем magento.

CREATE USER 'magento'@'%' IDENTIFIED BY 'kamisama123';

Дайте пользователю sql с именем magento разрешение на базу данных с именем magento.

GRANT ALL PRIVILEGES ON magento.* TO 'magento'@'%';
quit;

Учебник - Установка Apache в Linux

Теперь нам нужно установить веб-сервер Apache и все необходимое программное обеспечение.

На консоли Linux используйте следующие команды для установки необходимых пакетов.

# apt-get install apache2 php7.2 php7.2-mysql libapache2-mod-php7.2 php7.2-cli
# apt-get install php7.2-mbstring php7.2-xml php7.2-zip php7.2-gd php7.2-xml
# apt-get install php7.2-bcmath  php7.2-curl php7.2-intl php7.2-soap

Включите Apache mod_rewrite и отредактируйте файл apache2.conf.

# a2enmod rewrite
# vi /etc/apache2/apache2.conf

Вот оригинальный файл, перед нашей конфигурацией.

DefaultRuntimeDir ${APACHE_RUN_DIR}
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
Include ports.conf
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
AccessFileName .htaccess
<FilesMatch "^.ht">
Require all denied
</FilesMatch>
LogFormat "%v:%p %h %l %u %t "%r" %>s %O "%{Referer}i" "%{User-Agent}i"" vhost_combined
LogFormat "%h %l %u %t "%r" %>s %O "%{Referer}i" "%{User-Agent}i"" combined
LogFormat "%h %l %u %t "%r" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
IncludeOptional conf-enabled/*.conf
IncludeOptional sites-enabled/*.conf

В конце файла добавьте следующие строки.

<Directory /var/www/html>
AllowOverride All
</Directory>

Вот новый файл с нашей конфигурацией.

DefaultRuntimeDir ${APACHE_RUN_DIR}
PidFile ${APACHE_PID_FILE}
Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 5
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
HostnameLookups Off
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
Include ports.conf
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
AccessFileName .htaccess
<FilesMatch "^.ht">
Require all denied
</FilesMatch>
LogFormat "%v:%p %h %l %u %t "%r" %>s %O "%{Referer}i" "%{User-Agent}i"" vhost_combined
LogFormat "%h %l %u %t "%r" %>s %O "%{Referer}i" "%{User-Agent}i"" combined
LogFormat "%h %l %u %t "%r" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
IncludeOptional conf-enabled/*.conf
IncludeOptional sites-enabled/*.conf
<Directory /var/www/html>
AllowOverride All
</Directory>

Теперь вы должны найти расположение файла php.ini в вашей системе.

После нахождения вам нужно отредактировать файл php.ini.

# updatedb
# locate php.ini
# vi /etc/php/7.2/apache2/php.ini

Помните, что ваша версия PHP и местоположение файла могут отличаться от моей.

Вот оригинальный файл, перед нашей конфигурацией.

file_uploads = On
max_execution_time = 30
memory_limit = 128M
post_max_size = 8M
max_input_time = 60
; max_input_vars = 1000
output_buffering = 4096

Вот новый файл с нашей конфигурацией.

file_uploads = On
max_execution_time = 300
memory_limit = 256M
post_max_size = 32M
max_input_time = 60
max_input_vars = 4440
output_buffering = off

Вам также следует перезапустить apache вручную и проверить статус сервиса.

# service apache2 stop
# service apache2 start
# service apache2 status

Вот пример вывода статуса службы APache.

● apache2.service - LSB: Apache2 web server
Loaded: loaded (/etc/init.d/apache2; bad; vendor preset: enabled)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Active: active (running) since Mon 2018-04-23 00:02:09 -03; 1min 4s ago

Учебник - установка Magento на Ubuntu

Сначала давайте установим программное обеспечение Composer.

Загрузите и установите программное обеспечение композитора с помощью следующих команд.

# mkdir /downloads/composer -p
# cd /downloads/composer
# php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
# php composer-setup.php --install-dir=/usr/local/bin --filename=composer

Создайте системного пользователя по имени Magento и сделайте его членом группы Apache www-data.

# useradd magento
# usermod -g www-data magento

Теперь нам нужно установить Magento CMS на Ubuntu Linux.

На консоли Linux используйте следующие команды для загрузки пакета Magento.

# cd /downloads
# wget -O magento2-2.3.0.tar.gz https://codeload.github.com/magento/magento2/tar.gz/2.3.0
# tar -zxvf magento2-2.3.0.tar.gz

Переместите все файлы Magento в корневой каталог вашей установки Apache.

Установите правильное разрешение файла для всех перемещенных файлов.

# mv /downloads/magento2-2.3.0 /var/www/html/magento
# cd /var/www/html/magento
# composer install
# find var vendor pub/static pub/media app/etc -type f -exec chmod g+w {} \;
# find var vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} \;
# chown magento.www-data /var/www/html/magento -R
# chmod u+x /var/www/html/magento/bin/magento

Откройте браузер и введите IP-адрес вашего веб-сервера плюс / magento.

В нашем примере в браузере был введен следующий URL:

• http://35.162.85.57/magento

Должен быть представлен веб-интерфейс установки Magento.

Magento Installation

Нажмите кнопку «Начать проверку готовности» и убедитесь, что все требования выполнены.

Magento Readiness check

В нашем примере все требования были успешно выполнены.

Magento PHP Readiness check

Введите информацию о подключении MySQL к базе данных Magento.

Magento MySQL Database

Введите URL своего веб-сайта и запишите свой административный URL.

Magento web configuration

Выберите нужный язык, валюту и часовой пояс.

Magento Store customization

Введите следующую информацию учетной записи администратора.

• Ваше имя пользователя администратора.
• Ваша учетная запись администратора электронной почты.
• Ваш пароль администратора.

Magento Admin Account

Дождитесь окончания установки Magento.

Magento finished installation

Посмотрите на ваш обзор установки Magento.

Нажмите на кнопку Launch Magento Admin.

Magento Installation summary

После нажатия на кнопку, вы попадете на экран входа в Magento.

Magento login

На экране входа в Magento введите имя пользователя и пароль администратора.

После успешного входа вы будете отправлены на панель инструментов Magento.

Magento Dashboard

Поздравляем, вы успешно установили Magento в Ubuntu Linux.

После завершения установки вам необходимо создать запланированное задание на сервере Linux.

На консоли Linux используйте следующую команду для создания требуемой задачи расписания.

# cd /var/www/html/magento/bin/
# ./magento cron:install

Crontab has been generated and saved