Модули официально продаются только на LiveOpenCart. Покупка или использование файлов из сторонних источников может привести к проблемам с безопасностью, вредоносным изменениям и потере доступа к сайту.
-------------------------------------------------
S3 CloudImage | Хранение изображений в облаке + CDN
Перенесите изображения товаров в облачное S3-хранилище и забудьте о нехватке места на сервере.
Модуль прозрачно интегрируется в OpenCart - магазин работает как обычно, но картинки лежат в облаке.
«S3» здесь - это название протокола, а не одного провайдера. Модуль напрямую реализует S3 API и подпись AWS Signature V4, поэтому одинаково работает с Yandex Object Storage, Beget, Selectel, Amazon S3, Cloudflare R2 и любым другим S3-совместимым хранилищем.
ЧТО ДЕЛАЕТ МОДУЛЬ
Изображения товаров, категорий, брендов и весь кеш миниатюр хранятся в S3-совместимом облаке вместо локального диска.
Файлменеджер OpenCart работает напрямую с S3 - загрузка, удаление, создание папок. Миниатюры генерируются автоматически, с поддержкой WebP и CDN.
ВОЗМОЖНОСТИ
- Хранение изображений в S3 - загрузил через файлменеджер, и файл сразу в облаке, локальная копия удаляется автоматически
- Генерация миниатюр - оригинал скачивается из S3, ресайзится, результат сохраняется в S3 или локально (два режима кеша)
- WebP миниатюры - автоматическая конвертация JPEG/PNG в WebP (экономия 25-35% размера)
- WebP оригиналы - конвертация при загрузке в S3, экономия места в бакете
- Настраиваемое качество WebP - отдельная настройка, применяется и к миниатюрам, и к оригиналам
- CDN - встроенная поддержка любого CDN (Beget CDN, CloudFront, Cloudflare)
- Файлменеджер - листинг, загрузка, удаление файлов в S3 прямо в стандартном UI OpenCart
- Выборочная синхронизация - можно указать конкретные папки (например только catalog/products), остальные останутся локально
- Исключение папок - картинки из HTML-описаний и прочий мусор можно не отправлять в облако
- Миграция - пакетная загрузка существующих изображений в S3 с прогресс-баром, обратная миграция S3 → сервер
- Lazy migration - если файл есть локально, но нет в S3, модуль автоматически загрузит его при первом обращении
- Ресайз при загрузке - уменьшение оригиналов до заданных размеров перед отправкой в S3
- Очистка кеша - кнопка в модуле + автоматическая очистка через панель разработчика
- CRON-синхронизация - автоматическая загрузка новых/изменённых файлов в S3 по расписанию, идеально для импортов из 1С, CSV и сторонних модулей
- Тестовый прогон CRON - показывает, что будет загружено, ничего не меняя
- Параллельная загрузка - тысячи файлов за один проход, а не по одному
- Реестр файлов - мгновенное определение изменений без запросов к S3 (md5 vs БД)
- Перестроение реестра - если реестр разошёлся с реальным содержимым бакета, он собирается заново
- Поиск неиспользуемых файлов - обнаружение и удаление «сирот» в S3, не привязанных к товарам, со списком исключений
- Прогрев кеша миниатюр - предварительная генерация всех размеров для быстрой загрузки страниц
- Проверка S3 - проверка что все изображения из БД существуют в хранилище
- Удаление из файлменеджера - корректное удаление файлов, существующих только в S3, включая миниатюры и WebP-варианты
- Лог операций - все S3-запросы записываются в лог с просмотром из админки
ПОДДЕРЖИВАЕМЫЕ ПРОВАЙДЕРЫ
Проверены, описаны в документации, настройки прилагаются:
- Beget Cloud Storage (рекомендуем, подробнее ниже)
- Yandex Object Storage
- Selectel Object Storage
- Amazon S3 (AWS)
- Cloudflare R2
- MinIO (свой сервер)
Кроме них модуль работает с любым хранилищем, поддерживающим S3 API и Signature V4 - DigitalOcean Spaces, Wasabi, Backblaze B2, Ceph и другими. Провайдеры отличаются деталями (публичный доступ, работа с правами), поэтому если планируете использовать сервис не из списка выше - напишите нам до покупки, подтвердим или добавим поддержку.
Поддерживаются оба стиля URL - virtual-hosted (AWS, Yandex, Beget) и path-style (MinIO, Selectel, Cloudflare R2).
Отдельно про Cloudflare R2: он не отдаёт файлы публично со своего API-адреса, поэтому для него нужно включить публичный доступ к бакету и указать полученный адрес (`r2.dev` или свой домен) в поле «CDN URL». Модуль напомнит об этом прямо в тесте подключения.
РЕКОМЕНДУЕМ: Beget Облачное объектное хранилище S3
Для хранения изображений OpenCart отлично подходит облачное хранилище Beget:
- От 0,07 руб./день за 1 ГБ - платите только за фактически используемое пространство
- Безлимитный трафик - полоса 350 Мбит/с, бесплатные GET/POST/PUT-запросы
- Тройная репликация - файлы хранятся в трёх копиях на независимых серверах
- Доступность 99,98% - дата-центры уровня Tier III в России
- Привязка домена + SSL - удобные URL для изображений
- Масштабирование - хранилище расширяется автоматически без ограничений
- Техподдержка 24/7 - 85% тикетов решаются за 30 минут
Пример стоимости: 10 ГБ изображений = 0,70 руб./день (≈21 руб./мес.)
Подробнее и регистрация:
Beget Облачное объектное хранилище S3
КАК ЭТО РАБОТАЕТ
- Устанавливаете модуль стандартным способом через менеджер дополнений
- Указываете данные подключения к S3 (endpoint, ключи, бакет, регион)
- Нажимаете «Тест подключения» - модуль сразу скажет, если чего-то не хватает
- Запускаете миграцию - существующие изображения загружаются в S3
- Готово - магазин работает с облачным хранилищем
Модуль перехватывает стандартный resize() через OpenCart Events - ядро OpenCart не модифицируется. Обновления OpenCart не сломают работу модуля.
ИНТЕРФЕЙС
Страница настроек в админке с 7 вкладками:
- Подключение - endpoint, ключи, бакет, регион, CDN URL, тест подключения
- Настройки - режим кеша, папки синхронизации и исключения, WebP миниатюры и качество, оптимизация при загрузке (ресайз, WebP оригиналы)
- CRON - автоматическая синхронизация файлов в S3, настройка crontab, ручной запуск с прогресс-баром
- Миграция - миграция/проверка/скачивание с прогресс-баром, прогрев кеша, Danger Zone
- Обслуживание - очистка кеша миниатюр в S3, поиск и удаление неиспользуемых файлов, перестроение реестра
- Статистика - статистика S3-бакета (файлы, объём), лог операций
- О модуле - версия, контакты поддержки, лицензионное соглашение
ПОЧЕМУ ЭТОТ МОДУЛЬ
- Экономия диска - изображения в облаке, на сервере остаётся только код
- Масштабируемость - S3 не имеет ограничений на объём
- Скорость - отдача через CDN, кеширование миниатюр
- Надёжность - тройная репликация данных у провайдера
- Без привязки к провайдеру - смена хранилища это смена endpoint, а обратная миграция вернёт всё на сервер
- Простота - стандартная установка, привычный файлменеджер
- Гибкость - два режима кеша, любой провайдер, выборочная синхронизация и исключения
- Автоматизация - CRON-синхронизация для сторонних импортов (1С, CSV, любые модули)
- Порядок - поиск и удаление неиспользуемых файлов, реестр всех файлов в S3
- Безопасность - обновления OpenCart не ломают модуль (Events + OCMOD)
- Без зависимостей - чистый cURL, без Composer и AWS SDK, конфликтовать с хостингом нечему
ТРЕБОВАНИЯ
OpenCart 3.x, PHP 5.6 и выше, ionCube Loader, cURL с поддержкой SSL, GD с поддержкой WebP (для WebP-функций).
-------------------------------------------------
Не нашли подходящую версию модуля для вашего OpenCart? Сделаю адаптацию или разработку модулей под практически любую версию OpenCart и большинство популярных сборок.
Также доступна помощь с:
- установкой и настройкой модулей
- адаптацией под шаблон или нестандартный функционал
- доработкой OpenCart под задачи магазина
- исправлением конфликтов между модулями
- переносом сайта и настройкой хостинга
- оптимизацией и технической поддержкой
Если у вас нестандартная задача - напишите в личные сообщения, обсудим возможное решение.
По сторонним модулям, которые работают с изображениями напрямую: модуль перехватывает стандартный resize OpenCart, и всё что через него проходит - работает автоматически. Но модули, которые обращаются к файлам напрямую в обход стандартного механизма, моожет требовать адаптации.