How to install Magento 2.2.3 on CentOS 7
Оглавление:
- Предпосылки
- Пара ключей доступа Magento
- Создать базу данных MySQL
- Установить расширения PHP
- Установите Composer
- Создать нового пользователя системы
- Настроить PHP FPM
- Установить Magento
- Создать Magento crontab
- Настроить Nginx
- Вывод
Magento является ведущей платформой электронной коммерции корпоративного класса, основанной на технологии с открытым исходным кодом, сочетающей в себе мощные функции, гибкость и удобный интерфейс.
Благодаря таким функциям, как привлечение покупателей, гибкая модульная архитектура и масштабируемость и производительность корпоративного уровня, Magento является платформой выбора для большинства онлайн-продавцов.
Это первый пост из серии «Как установить и настроить Magento 2 в CentOS 7. В этом руководстве мы расскажем вам о шагах по установке Magento 2 на вашем компьютере CentOS 7».
Предпосылки
Для выполнения этого урока вам понадобятся:
- Сервер CentOS 7, в соответствии с официальными системными требованиями Magento 2 вам нужно как минимум 2 ГБ оперативной памяти. Если вы используете сервер с менее чем 2 ГБ ОЗУ, вы должны создать файл подкачки. Зарегистрированный как учетная запись пользователя с привилегиями sudo. Доменное имя, указывающее на IP вашего публичного сервера. В этом руководстве мы будем использовать
example.comУстановлен и настроен Nginx, MySQL и PHP 7.1. Если нет, обратитесь к нашему руководству по LEMP для CentOS 7. Действительный сертификат SSL. Если у вас его нет, вы можете создать бесплатный SSL-сертификат Lets's Encrypt, следуя Secure Nginx с Let's Encrypt на CentOS 7.
Пара ключей доступа Magento
Нам нужно сгенерировать ключи доступа для аутентификации доступа к хранилищу кода Magento 2 и сторонним расширениям и темам.
Создать базу данных MySQL
Magento 2 совместим с MySQL 5.6 и 5.7, MariaDB 10.x и Percona 5.7. Если на вашем сервере не установлены MySQL или MariaDB, вы можете проверить это руководство.
Войдите в оболочку MySQL:
mysql -u root -p
И выполните следующие команды, чтобы создать новую базу данных и пользователя и предоставить привилегии этому пользователю по вновь созданной базе данных:
CREATE DATABASE magento;
GRANT ALL ON magento.* TO magento@localhost IDENTIFIED BY 'P4ssvv0rD';
Установить расширения PHP
Мы предполагаем, что вы уже включили репозиторий PHP 7.1 Remi, используя наше руководство.
Установите все необходимые расширения PHP с помощью следующей команды:
sudo yum install php-mysql php-opcache php-xml php-mcrypt php-gd php-soap php-redis php-bcmath php-intl php-mbstring php-json php-iconv php-fpm php-zip
После завершения установки установите необходимые и рекомендуемые параметры PHP, отредактировав файл
php.ini
с помощью
sed
:
sudo sed -i "s/memory_limit =.*/memory_limit = 756M/" /etc/php.ini
sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php.ini
sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php.ini
sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php.ini
sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php.ini
sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php.d/10-opcache.ini
Установите Composer
Composer - менеджер зависимостей для PHP, который используется для установки, обновления и управления библиотеками.
Чтобы установить composer глобально, скачайте установщик Composer с помощью curl и переместите файл в каталог
/usr/local/bin
:
curl -sS https://getcomposer.org/installer | php
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Создать нового пользователя системы
Создайте нового пользователя и группу, которая будет запускать нашу установку Magento, для простоты мы назовем нашего пользователя
magento
:
sudo useradd -m -U -r -d /opt/magento magento
Добавьте пользователя
nginx
в группу
magento
и измените разрешения каталога
/opt/magento
чтобы Nginx мог получить доступ к нашей установке Magento:
sudo usermod -a -G magento nginx
sudo chmod 750 /opt/magento
Настроить PHP FPM
Далее нам нужно настроить PHP и создать пул FPM для нашего пользователя
magento
.
Откройте ваш текстовый редактор и создайте следующий файл:
/etc/php-fpm.d/magento.conf
user = magento group = nginx listen.owner = magento listen.group = nginx listen = /run/php-fpm/magento.sock pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 10s pm.max_requests = 500 chdir = /
Сохраните файл и перезапустите службу PHP FPM, чтобы изменения вступили в силу:
sudo systemctl restart php-fpm
Установить Magento
Есть несколько способов установить Magento. Избегайте установки Magento из репозитория Github, потому что эта версия предназначена для разработки, а не для производственных установок. В этом уроке мы установим Magento из их репозиториев, используя composer.
Переключитесь на пользователя
magento
:
sudo su - magento
Запустите установку, загрузив файлы
/opt/magento/public_html
каталог
/opt/magento/public_html
:
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition /opt/magento/public_html
Во время создания проекта композитор попросит вас ввести ключи доступа, скопировать ключи из вашей учетной записи Magento Marketplace и сохранить их в файле
auth.json
, чтобы позже при обновлении установки вам не нужно было добавлять эти же ключи опять таки.
Authentication required (repo.magento.com): Username: e758ec1745d190520ca246e4e832e12c Password: Do you want to store credentials for repo.magento.com in /opt/magento/.config/composer/auth.json ?
Как только проект создан, мы можем начать установку. Мы можем установить Magento либо с помощью командной строки, либо с помощью мастера веб-настройки. В этом уроке мы установим Magento с помощью командной строки.
Мы будем использовать следующие опции для установки нашего магазина Magento:
- Базовые и базовые безопасные URL-адреса установлены на
https://example.com, измените их с вашим доменом. Администратор Magento:-
JohnDoeкак имя и фамилия.[email protected]по электронной почте.johnкак имя пользователя иj0hnP4ssvv0rDкак пароль.
magento, имя пользователяmagento, парольP4ssvv0rDи сервер базы данных находятся на том же хосте, что и веб-сервер.en_US, американский английский в качестве языка по умолчанию.USDСША в качестве валюты по умолчанию.America/Chicagoкак часовой пояс. -
Перейдите в каталог Magento
~/public_html
:
cd ~/public_html
Запустите следующую команду, чтобы начать установку:
php bin/magento setup:install --base-url=https://example.com/ \ --base-url-secure=https://example.com/ \ --admin-firstname="John" \ --admin-lastname="Doe" \ --admin-email="[email protected]" \ --admin-user="john" \ --admin-password="j0hnP4ssvv0rD" \ --db-name="magento" \ --db-host="localhost" \ --db-user="magento" \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --db-password="P4ssvv0rD"
Не забудьте сменить пароль (
j0hnP4ssvv0rD
) на более безопасный.
Если установка прошла успешно, вы увидите сообщение, содержащее URI для панели администратора Magento.
: Magento installation complete.: Magento Admin URI: /admin_1csalp Nothing to import.
Создать Magento crontab
Magento использует задания cron для планирования задач, таких как переиндексация, уведомления, карты сайта, электронная почта и многое другое.
Для создания Magento crontab выполните следующую команду от имени пользователя
magento
:
php ~/public_html/bin/magento cron:install
Мы можем проверить, что crontab установлен, запустив:
crontab -l
#~ MAGENTO START adc062915d7b30804a2b340095af072d * * * * * /usr/bin/php /opt/magento/public_html/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /opt/magento/public_html/var/log/magento.cron.log * * * * * /usr/bin/php /opt/magento/public_html/update/cron.php >> /opt/magento/public_html/var/log/update.cron.log * * * * * /usr/bin/php /opt/magento/public_html/bin/magento setup:cron:run >> /opt/magento/public_html/var/log/setup.cron.log #~ MAGENTO END adc062915d7b30804a2b340095af072d
Настроить Nginx
/etc/nginx/conf.d/example.com.conf
upstream fastcgi_backend { server unix:/run/php-fpm/magento.sock; } server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; set $MAGE_ROOT /opt/magento/public_html; set $MAGE_MODE developer; # or production access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; include /opt/magento/public_html/nginx.conf.sample; }
Перезагрузите службу Nginx, чтобы изменения вступили в силу:
sudo systemctl reload nginx
Наконец, вы должны иметь возможность войти в вашу установку Magento по адресу
https://example.com/admin_1csalp
используя пользователя с правами администратора, который вы указали при запуске установщика Magento.
Вывод
В этом руководстве вы установили Magento 2 на свой сервер Centos 7. Вы также сгенерировали бесплатный SSL-сертификат Let's encrypt и настроили Nginx в качестве прокси-сервера завершения SSL.
центр электронной коммерции magentoЭтот пост является частью инструкции Как установить и настроить Magento 2 на CentOS 7 series.
Другие посты в этой серии:
• Установите Magento 2 в CentOS 7 • Настройте Magento 2 для использования Varnish в CentOS 7Установите Мариадб на Centos 7
MariaDB - это система управления реляционными базами данных с открытым исходным кодом, обратно совместимая двоичная замена MySQL. В этом уроке мы покажем вам, как установить последнюю версию MariaDB на компьютере с CentOS 7.
Установите MySQL на Centos 7
С выпуском CentOS 7 MySQL самая популярная в мире система управления реляционными базами данных с открытым исходным кодом больше не доступна в репозиториях CentOS, и MariaDB стала системой баз данных по умолчанию. В этом уроке мы покажем вам, как установить MySQL на компьютере с CentOS 7.
Установите php 7 на centos 7
CentOS 7 поставляется с PHP версией 5.4, которая уже некоторое время официально является EOL и больше не поддерживается. В этом руководстве мы объясним, как установить или обновить до PHP 7.0, 7.1, 7.2 и 7.3 на CentOS 7







