MAATRIX / Блог / VPS для OpenCart: разворачиваем интернет-магазин

VPS для OpenCart: разворачиваем интернет-магазин

VPS для OpenCart: установка магазина с нуля
Блог MAATRIX · 2026-07-07

OpenCart — популярный движок для интернет-магазинов, и на собственном VPS он работает быстрее и безопаснее, чем на общем хостинге. Соберём стек, поставим магазин, настроим SSL и права доступа. Всё командами, которые можно копировать.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Готовим окружение

OpenCart работает на nginx + PHP-FPM + MariaDB. Ставим PHP-расширения, которые движок проверяет в системном отчёте.

apt update && apt upgrade -y
apt install nginx mariadb-server php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip php-bcmath -y
systemctl enable --now nginx mariadb php8.2-fpm

Для магазина важна скорость каталога: AMD EPYC + NVMe на MAATRIX держат отклик карточек товара низким даже при тысячах SKU и активной выборке из базы.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS для интернет-магазина

База данных магазина

mysql_secure_installation
mysql -u root -p
CREATE DATABASE opencart_db CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'oc_user'@'localhost' IDENTIFIED BY 'СложныйПароль123';
GRANT ALL PRIVILEGES ON opencart_db.* TO 'oc_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Скачиваем OpenCart

Забираем релиз с GitHub и распаковываем. В архиве движок лежит в подкаталоге upload — именно он и есть корень сайта:

mkdir -p /var/www/opencart && cd /var/www/opencart
curl -L -o opencart.zip https://github.com/opencart/opencart/releases/download/4.0.2.0/opencart-4.0.2.0.zip
apt install unzip -y && unzip opencart.zip
mv upload/* upload/.htaccess.txt ./ 2>/dev/null; mv upload/* ./

Готовим конфигурационные файлы, которые OpenCart ждёт при установке:

cp config-dist.php config.php
cp admin/config-dist.php admin/config.php
chown -R www-data:www-data /var/www/opencart
chmod -R 755 /var/www/opencart

Конфиг nginx для OpenCart

server {
    listen 80;
    server_name ваш-домен.ru;
    root /var/www/opencart;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

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

    location ~* \.(engine|inc|log|sql)$ {
        deny all;
    }
}
ln -s /etc/nginx/sites-available/opencart /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

SSL и завершение установки

Выпускаем сертификат — магазину HTTPS обязателен для приёма оплат:

apt install certbot python3-certbot-nginx -y
certbot --nginx -d ваш-домен.ru

Открываем сайт, проходим веб-установщик (данные базы: opencart_db, oc_user). После установки удаляем каталог install — иначе движок откажется работать:

rm -rf /var/www/opencart/install
  • Частая ошибка: нет прав на storage/ и system/storage/ — проверьте, что владелец www-data.
  • Ежедневные бэкапы MAATRIX критичны для магазина: заказы и клиентскую базу нельзя терять.

Кэш и оптимизация OpenCart

OpenCart умеет кэшировать шаблоны и SEO-ссылки. В админке зайдите в System → Maintenance и включите кэш темы, а для каталога используйте встроенное кэширование запросов. Но главный прирост, как и у любой PHP-CMS, даёт OPcache:

opcache.enable=1
opcache.memory_consumption=192
opcache.max_accelerated_files=15000
opcache.revalidate_freq=2
systemctl restart php8.2-fpm

Для магазина с большим каталогом подкрутите InnoDB в MariaDB, чтобы товарные таблицы жили в памяти. Создайте /etc/mysql/mariadb.conf.d/99-oc.cnf:

[mysqld]
innodb_buffer_pool_size = 512M
innodb_flush_log_at_trx_commit = 2
systemctl restart mariadb

И обязательно включите SEO URL в System → SEO — иначе ссылки будут вида index.php?route=..., что плохо и для людей, и для поиска. Вместе кэш, OPcache и тюнинг базы держат карточки товара быстрыми даже в час пик, а NVMe у MAATRIX убирает дисковую задержку при выборке из каталога.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS для интернет-магазина

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Частые вопросы

Какая версия PHP нужна OpenCart?

OpenCart 4 требует PHP 8.0+. Оптимально PHP 8.2. Обязательно расширения gd, curl, mbstring, zip и bcmath — иначе установщик выдаст предупреждения.

Куда вынести каталог storage?

Для безопасности storage лучше держать вне webroot. OpenCart 4 позволяет указать путь к нему при установке — так товарные файлы недоступны напрямую из интернета.

Потянет ли младший VPS магазин?

Небольшой магазин до пары тысяч товаров комфортно работает на 2 ГБ RAM. Для акций и пиков трафика берите 4 ГБ и NVMe — на MAATRIX апгрейд плана делается без переезда.