ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Установить Shopware 5 на Ubuntu 16.04

Установить Shopware 5 на Ubuntu 16.04

В этой статье мы расскажем, как установить Shopware 5 на Ubuntu 16.04 VPS с MariaDB, PHP-FPM и Nginx. Shopware представляет собой современное программное обеспечение для электронной коммерции с открытым исходным кодом, написанный на PHP поверх Symfony и компонентов Zend. Это руководство должно работать на других системах Linux VPS, так же хорошо, но был протестирован и написал это для Ubuntu 16.04 VPS.

Войдите в свой VPS через SSH с помощью пользователя sudo

ssh furious@vps_IP

Обновите систему и установим необходимые пакеты

[furious]$ sudo apt-get update && sudo apt-get -y upgrade
[furious]$ sudo apt-get install software-properties-common nano wget ant

Установите MariaDB 10.1

Чтобы добавить репозиторий MariaDB в список источников и установить последнюю версию сервера MariaDB 10.1, выполните следующие команды:

[furious]$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
[furious]$ sudo add-apt-repository 'deb [arch=amd64,i386] http://ftp.osuosl.org/pub/mariadb/repo/10.1/ubuntu xenial main'
[furious]$ sudo apt-get update
[furious]$ sudo apt-get install -y mariadb-server

Когда установка завершена, выполните следующую команду, чтобы защитить установку:

[furious]$ mysql_secure_installation

Далее, нам необходимо создать базу данных для установки Shopware.

[furious]$ mysql -uroot -p
MariaDB [(none)]> CREATE DATABASE shopware;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON shopware.* TO 'shopware'@'localhost' IDENTIFIED BY 'strong_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

Установка PHP и PHP необходимых модулей

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

[furious]$ sudo apt-get -y install php-fpm php-cli php-json php-curl php-gd php-mysql php-xml php-mbstring

Следующие команды установят предел PHP памяти до 512 Мб, изменят значения upload_max_filesize и post_max_size до 100M и установят часовой пояс для UTC.

sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/7.0/cli/php.ini
sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.0/cli/php.ini
sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.0/fpm/php.ini
sed -i "s/upload_max_filesize = .*/upload_max_filesize = 100M/" /etc/php/7.0/fpm/php.ini
sed -i "s/post_max_size = .*/post_max_size = 100M/" /etc/php/7.0/fpm/php.ini

Создайте новый PHP-FPM пул для вашего пользователя, если вы не один:

[furious]$ sudo nano /etc/php/7.0/fpm/pool.d/your_user_name.conf
[your_user_name]
user = ваше_имя_пользователя
group = ваше_имя_пользователя
listen = /var/run/php/php7.0-your_user_name-fpm.sock
listen.owner = ваше_имя_пользователя
listen.group = ваше_имя_пользователя
listen.mode = 0666
pm = ondemand
pm.max_children = 5
pm.process_idle_timeout = 10s
pm.max_requests = 200
chdir = /

Не забудьте изменить значение ваше_имя_пользователя на ваше имя пользователя.

Перезагрузка PHP-FPM:

[furious]$ sudo service php7.0-fpm restart

Загрузка и установка Shopware

Загрузите последнюю версию Shopware от GitHub: https://github.com/shopware/shopware/releases. На момент написания статьи, последняя версия Shopware версия 5.2.12.

[furious]$ wget https://github.com/shopware/shopware/archive/v5.2.12.zip
[furious]$ unzip v5.2.12.zip
[furious]$ mv shopware-5.1.6 ~/myShopware.ru
[furious]$ rm -f v5.2.12.zip

Настройка конфигурации соединения и базы данных:

[furious]$ cd ~/myShopware.ru/build
[furious]$ ant configure
[furious]$ ant build-unit

Скачайте тестовые изображения:

[furious]$ cd ~/myShopware.ru
[furious]$ wget http://releases.s3.shopware.com/test_images.zip
[furious]$ unzip test_images.zip

Установка и настройка Nginx

Чтобы установить последнюю стабильную версию Nginx, доступную на репозитории Ubuntu, выполните следующую команду:

[furious]$ sudo apt-get install nginx

Создайте самозаверяющийся сертификат SSL:

[furious]$ sudo mkdir -p /etc/nginx/ssl
[furious]$ cd /etc/nginx/ssl
[furious]$ sudo openssl genrsa -des3 -passout pass:x -out shopware.pass.key 2048
[furious]$ sudo openssl rsa -passin pass:x -in shopware.pass.key -out shopware.key
[furious]$ sudo rm shopware.pass.key
[furious]$ sudo openssl req -new -key shopware.key -out shopware.csr
[furious]$ sudo openssl x509 -req -days 365 -in shopware.csr -signkey shopware.key -out shopware.crt

Если вы не хотите получать предупреждения, связанные с самозаверяющимися SSL сертификатами, вы можете приобрести сертификат доверенного SSL или заказать бесплатный SSL сертификат от Let’ Encrypt.

Затем создайте новый блок сервера Nginx:

[furious]$ sudo nano /etc/nginx/sites-available/myShopware.ru
server {
    listen 443;
    server_name myShopware.ru;
    root /home/ваше_имя_пльзователя/myShopware.ru;

    index shopware.php index.php;

    location / {
      rewrite files/documents/.* /engine last;
      rewrite backend/media/(.*) /media/$1 last;

      try_files $uri $uri/ /shopware.php$args;
    }

    ssl on;
    ssl_certificate     /etc/nginx/ssl/shopware.ru.crt;
    ssl_certificate_key /etc/nginx/ssl/shopware.ru.key;
    ssl_session_timeout 5m;
    ssl_ciphers               'AES128+EECDH:AES128+EDH:!aNULL';
    ssl_protocols              TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;

    access_log  /var/log/nginx/shopware.ru.access.log;
    error_log   /var/log/nginx/shopware.ru.error.log;

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php/php7.0-your_user_name-fpm.sock;
        fastcgi_index shopware.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_intercept_errors off;
        fastcgi_buffer_size 16k;
        fastcgi_buffers 4 16k;
    }

    location ~ /\.ht {
        deny all;
    }
}

server {
    listen      80;
    server_name myShopware.com;

    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^ https://$server_name$request_uri? permanent;
}

Не забудьте изменить переменную ваше_имя_пользователя на ваше действительное имя пользователя.

Активировать блок сервера, создав символическую ссылку:

[furious]$ sudo ln -s /etc/nginx/sites-available/myShopware.com /etc/nginx/sites-enabled/myShopware.ru

Проверка конфигурации Nginx и перезапуск Nginx:

[furious]$ sudo nginx -t
[furious]$ sudo service nginx restart

Вот и все. Вы успешно установили Shopware на вашем Ubuntu 16,04 VPS. имя пользователя и пароль по умолчанию оба demo. Для получения дополнительных сведений о том, как управлять установкой Shopware, пожалуйста, обратитесь к официальной документации Shopware.

PS . Если вам понравился этот пост, пожалуйста поделитесь им с друзьями в социальных сетях помощью кнопок на левой стороне поста или просто оставьте комментарий ниже. Заранее благодарю.

[huge_it_gallery id=”4″]

Exit mobile version