Гид по технологиям

Установка Shopware 5 на Debian 9 с NGINX и Let's Encrypt SSL

5 min read E-Commerce Обновлено 26 Nov 2025
Shopware на Debian 9 с NGINX и SSL
Shopware на Debian 9 с NGINX и SSL

Важно: проверяйте версии PHP и расширений перед установкой — Shopware 5 совместим с PHP до версии 7.2.x. Для надёжной работы рекомендуется PHP 7.1+ и минимум 4 ГБ свободного диска.

Ключевые варианты запроса

  • установка Shopware на Debian 9
  • Shopware NGINX PHP-FPM установка
  • Shopware Let’s Encrypt сертификат
  • Shopware MariaDB настройка

Требования

Убедитесь, что ваша система соответствует минимальным требованиям:

  • Linux (Debian 9) с веб-сервером NGINX или Apache 2.x (mod_rewrite).
  • PHP 5.6.4+ с расширениями: ctype, gd, curl, dom, hash, iconv, zip, json, mbstring, openssl, session, simplexml, xml, zlib, fileinfo, pdo/mysql. PHP 7.1+ рекомендуем.
  • MySQL 5.5.0+ или совместимая MariaDB.
  • Возможность настройки cron (планировщик задач).
  • Минимум 4 ГБ свободного места на диске.
  • IonCube Loader 5.0.0+ — опционально для некоторых коммерческих плагинов.

Примечание: текущая совместимость Shopware указана до PHP 7.2.x.

Необходимые подготовительные шаги

  • Debian 9 установлен и обновлён.
  • Непользователь root — пользователь с sudo-привилегиями.

Проверка версии Debian:

lsb_release -ds
# Debian GNU/Linux 9.8 (stretch)

Настройка часового пояса:

sudo dpkg-reconfigure tzdata

Обновление пакетов системы:

sudo apt update && sudo apt upgrade -y

Установка базовых утилит:

sudo apt install -y curl wget vim git unzip socat apt-transport-https

Шаг 1 — Установка PHP и расширений

Установите PHP-FPM и необходимые модули (в примере — пакеты для PHP 7.0, при необходимости замените на доступную в вашей системе версию):

sudo apt install -y php7.0 php7.0-cli php7.0-fpm php7.0-common php7.0-mysql php7.0-curl php7.0-json php7.0-zip php7.0-gd php7.0-xml php7.0-mbstring php7.0-opcache

Показ установленных модулей PHP:

php -m

Проверка версии PHP:

php --version
# Пример вывода: PHP 7.0.30-0+deb9u1 (cli)

PHP-FPM на Debian 9 запускается и включается автоматически.

Шаг 2 — Установка IonCube Loader (опционально)

IonCube нужен только если вы используете зашифрованные расширения/плагины. Процедура:

cd /tmp && wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar xfz ioncube_loaders_lin_*.gz
php -i | grep extension_dir
# пример: extension_dir => /usr/lib/php/20170718
sudo cp /tmp/ioncube/ioncube_loader_lin_7.0.so /usr/lib/php/20170718/
sudo vim /etc/php/7.0/fpm/php.ini
# добавить строку в секцию [PHP]:
# zend_extension = /usr/lib/php/20170718/ioncube_loader_lin_7.0.so
sudo systemctl restart php7.0-fpm.service

Если вы используете другую версию PHP — подставьте соответствующую .so для вашей версии.

Шаг 3 — Установка MariaDB и создание базы данных

Установите сервер баз данных MariaDB:

sudo apt install -y mariadb-server

Проверка версии:

mysql --version
# пример: mysql Ver 14.14 Distrib 5.7.26

Усиление безопасности MySQL/MariaDB и установка пароля root:

sudo mysql_secure_installation

Ответьте на вопросы (обычно: отключение тестовой БД, удаление анонимных пользователей и т.д.).

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

sudo mysql -u root -p
mysql> CREATE DATABASE dbname;
mysql> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
mysql> exit

Замените dbname, username, password на свои значения и запомните их для мастера установки Shopware.

Шаг 4 — Установка acme.sh и получение сертификата Let’s Encrypt (опционально)

Получение TLS-сертификата повышает безопасность и SEO. В этом руководстве используются acme.sh (легковесный клиент без внешних зависимостей).

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~
acme.sh --version
# пример: v2.8.1

Получение RSA и ECDSA-сертификатов (замените example.com на ваш домен):

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Папки с сертификатами (пример): /home/username/example.com и /home/username/example.com_ecc.

Скопируйте/установите сертификаты в /etc/letsencrypt (структура на ваш выбор):

mkdir -p /etc/letsencrypt/example.com
mkdir -p /etc/letsencrypt/example.com_ecc
# установка RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# установка ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

Сертификаты автоматически продлеваются клиентом acme.sh.

exit

Шаг 5 — Установка и конфигурация NGINX

Установите NGINX:

sudo apt install -y nginx
sudo nginx -v
# nginx version: nginx/1.10.3

Пример конфигурации виртуального хоста для Shopware. Создайте файл /etc/nginx/sites-available/shopware.conf и вставьте:

server {
    listen 80;
    listen 443 ssl;

    ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/example.com/private.key;
    ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;

    server_name example.com;
    root /var/www/shopware;

    index shopware.php index.php;

    location / {
        try_files $uri $uri/ /shopware.php$is_args$args;
    }

    location /recovery/install {
      index index.php;
      try_files $uri /recovery/install/index.php$is_args$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
    }
}

Активируйте сайт и проверьте конфигурацию:

sudo ln -s /etc/nginx/sites-available/shopware.conf /etc/nginx/sites-enabled
sudo nginx -t
sudo systemctl reload nginx.service

Советы по безопасности TLS: при работе в продакшн-режиме уменьшите список поддерживаемых протоколов/шифров и включите HSTS.

Шаг 6 — Установка Shopware

Создайте корневую папку для сайта и назначьте владельца:

sudo mkdir -p /var/www/shopware
sudo chown -R {your_user}:{your_user} /var/www/shopware
cd /var/www/shopware

Скачайте и распакуйте релиз Shopware (обновите URL на актуальный, если есть новая версия):

wget https://releases.shopware.com/install_5.5.8_d5bf50630eeaacc6679683e0ab0dcba89498be6d.zip?_ga=2.141661361.269357371.1556739808-1418008019.1556603459 -O shopware.zip
unzip shopware.zip
rm shopware.zip

Назначьте владельцем www-data (NGINX обычно работает под этой учётной записью):

sudo chown -R www-data:www-data /var/www/shopware

Проверьте и при необходимости увеличьте параметры PHP в /etc/php/7.0/fpm/php.ini, например:

  • memory_limit = 256M
  • upload_max_filesize = 6M
  • allow_url_fopen = On

После изменений перезагрузите PHP-FPM:

sudo systemctl reload php7.0-fpm.service

Откройте в браузере ваш домен или IP и пройдите шаги мастера установки. Бэкенд доступен по пути /backend: http://example.com/backend

Шаг 7 — Завершение установки и проверка

/files/dfe80039-e8e9-4226-986b-af5a0a7f1320.png Описание изображения: Мастер установки Shopware — выбор языка.

Пошаговые скриншоты мастера показывают: проверку системных требований, ввод базы данных, импорт таблиц и финальные настройки.

/files/3109fd68-6c56-4d45-8f87-588b508c3fb6.png Описание изображения: Сообщение о соблюдении системных требований.

/files/fdf4fcdb-6102-47c2-bb5b-04babe4e47e1.png Описание изображения: Принятие лицензионного соглашения Shopware.

/files/d9f3b867-ea5c-4cee-b3a3-cafe839d05e0.png Описание изображения: Ввод параметров подключения к базе данных в мастере.

/files/5129f9ac-891a-4555-8e37-878518ce9cce.png Описание изображения: Процесс создания таблиц базы данных.

/files/2ef9f043-7e8f-416c-bac8-65ebb4e4c311.png Описание изображения: Успешная инициализация базы данных.

/files/5d42fc59-4d25-4e8e-a1f7-382a6035b4ee.png Описание изображения: Выбор лицензии для установки Shopware.

/files/763267cc-5cf3-41b7-b064-75917044e2fc.png Описание изображения: Базовые настройки магазина (имя, контактные данные).

/files/215f0b1f-5184-4a25-afe8-1e921d5b7694.png Описание изображения: Окно уведомления об успешной установке.

/files/0ceadf90-2809-4858-9dea-c91cce0ed860.png Описание изображения: Страница логина в административную панель Shopware.

После успешной установки войдите в админку (/backend) и проверьте базовую работоспособность: каталоги, загрузка изображений, оформление заказа.

Проверка и отладка (частые проблемы и их решения)

  • 403/404 после установки: проверьте права на /var/www/shopware и файлы конфигурации NGINX.
  • Ошибки PHP: смотрите логи /var/log/nginx/error.log и /var/log/php7.0-fpm.log.
  • Проблемы с подключением к базе: проверьте host/порт/учётные данные и права пользователя в MySQL.
  • SSL не применяется: убедитесь, что пути к сертификатам в конфигурации NGINX корректны и что файлы существуют.

Полезные команды для отладки:

sudo tail -f /var/log/nginx/error.log /var/log/nginx/access.log
sudo journalctl -u php7.0-fpm.service -f
sudo nginx -t

Мини-методология установки (проверенная последовательность)

  1. Подготовка ОС и пользователей.
  2. Установка PHP-FPM и требуемых расширений.
  3. Настройка СУБД и учетных записей.
  4. Настройка веб-сервера (NGINX) и SSL.
  5. Развёртывание файлов Shopware и настройка прав.
  6. Прогон мастера установки и базовая проверка.
  7. Мониторинг и регулярные бэкапы.

Роли и краткие чек-листы

  • Системный администратор:

    • Обновить систему и установить пакеты.
    • Настроить firewall, SSL и бэкапы.
    • Назначить права на директории и сервисы.
  • Разработчик / интегратор:

    • Проверить и при необходимости адаптировать PHP-конфигурацию.
    • Установить дополнительные плагины и проверить совместимость.
    • Настроить cron и кеширование (например, Varnish/Redis по необходимости).
  • Владелец магазина / менеджер:

    • Подготовить контент (товары, категории).
    • Проверить платёжные и доставочные методы.
    • Провести тестовый заказ и приемочное тестирование.

Пример потока принятия решения (Mermaid)

flowchart TD
  A[Начало установки] --> B{PHP установлен?}
  B -- Да --> C{DB настроена?}
  B -- Нет --> D[Установить PHP и расширения]
  D --> C
  C -- Да --> E{SSL нужен?}
  C -- Нет --> F[Настроить MariaDB]
  F --> E
  E -- Да --> G[Установить acme.sh и получить сертификат]
  E -- Нет --> H[Продолжить без SSL]
  G --> I[Настроить NGINX и развернуть Shopware]
  H --> I
  I --> J[Запустить мастер установки]
  J --> K[Проверки и мониторинг]

Контроль приёмки — что проверить после установки

  • Доступность публичной части сайта по HTTP/HTTPS.
  • Логин в админку (/backend) и создание тестового продукта.
  • Успешная отправка тестового заказа.
  • Автоматическое обновление сертификатов (acme.sh).

Краткое резюме

Вы установили Shopware CE на Debian 9 с использованием NGINX и PHP-FPM, настроили MariaDB и (опционально) TLS через acme.sh. Далее рекомендуется настроить регулярные бэкапы, мониторинг логов и производительности, а также применить дополнительные оптимизации (кеширование, CDN) перед запуском в боевую эксплуатацию.

Ссылки

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Не удалось инициализировать Direct3D — решения
Техподдержка

Не удалось инициализировать Direct3D — решения

Исправить Data Retrieval в Diablo 4 на Steam
Игры

Исправить Data Retrieval в Diablo 4 на Steam

Open Graph в WordPress — настройка мета‑тегов
WordPress SEO

Open Graph в WordPress — настройка мета‑тегов

getconf: адаптивные скрипты для разных Linux
Linux

getconf: адаптивные скрипты для разных Linux

Проверка входов в Windows — успешные и неудачные попытки
Безопасность Windows

Проверка входов в Windows — успешные и неудачные попытки

Исправить ошибку DistributedCOM (DCOM) в Windows
Windows

Исправить ошибку DistributedCOM (DCOM) в Windows