В этой статье мы расскажем, как установить Shopware 5 на Ubuntu 16.04 VPS с MariaDB, PHP-FPM и Nginx. Shopware представляет собой современное программное обеспечение для электронной коммерции с открытым исходным кодом, написанный на PHP поверх Symfony и компонентов Zend. Это руководство должно работать на других системах Linux VPS, так же хорошо, но был протестирован и написал это для Ubuntu 16.04 VPS.
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 в список источников и установить последнюю версию сервера 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 версии 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 от 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, доступную на репозитории 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″]
привет, хотел поинтерtсоваться, есть ли у вас опыт работы с платформой Shopware 6′?