8. Обновление и откат
Что нужно знать сразу
- Установка и обновление выполняются только через Webasyst Store и «Установщик» в административной панели магазина. Версия 3.4.3 приходит в «Установщик», когда её опубликуют в Store; в Store на сегодня лежит 3.1.7. Если у вас версия из Store старее, нажмите «Обновить» в «Установщике», когда обновление появится. Руководство не описывает ручную установку.
- Обязательное: PHP 8.2+, резервная копия, установка 3.4.3, открыть настройки плагина, при режиме «Через сервер» заменить правила, запустить «Проверку кеша». Необязательное (но желательное): cron, опция «Адаптивные изображения PRO» (если плагин установлен), Metadata v2.
- Описанная здесь версия 3.4.3; до её публикации в Store в «Установщике» вы можете видеть только 3.1.7.
- PHP 8.2 или новее обязателен (проверялись 8.2–8.5). Версии 3.2.0 и новее не работают на PHP 7.4–8.1: плагин ничего не включит и напишет причину в
wa-log/supercache.log. Сначала поднимите PHP. - Настройки при обновлении сохраняются.
- Однократная очистка кеша: при обновлении плагин один раз очищает старый кеш (в 3.1.7 в кеш могли попасть страницы заказов и кабинета). Страницы пересоберутся по мере посещений, поэтому сразу после обновления возможен краткий рост нагрузки на PHP.
- ⚠️ Не проверялось: приложение «Установщик» Webasyst и канал Store (обновление проверялось через тот же программный механизм установщика на изолированных стендах); поведение Установщика на PHP ниже 8.2; реальные лицензии Premium; реальный боевой магазин, nginx на боевом сервере, Windows-хостинг. Поэтому по возможности сначала обновите копию магазина.
Чек-лист обновления (с 3.1.7 или с любой более старой версии)
До обновления
- PHP 8.2+ (проверьте у хостинга).
- Резервная копия сайта и базы данных. Установщик сохраняет прежнюю папку плагина в
wa-data/protected/wa-installer/backup/…, но копию базы и сайта он не делает. - Запомните свой режим: «Через роутинг» или «Через сервер».
- Магазин с заметным трафиком: на время обновления включите страницу «технические работы» средствами веб-сервера или временно отключите блок SuperCache в
.htaccess/try_files. 🔧 Причина: после замены файлов веб-сервер в режиме «Через сервер» ещё может отдавать старый кеш без PHP, а очистка запускается при первом запросе, выполняемом PHP.
Обновление
- Нажмите «Обновить» в приложении «Установщик» (⚠️ канал Store и «Установщик» не проверялись: обновление проверялось через тот же программный механизм на изолированных стендах).
- Откройте любую страницу магазина или страницу настроек плагина: это запускает однократную очистку старого кеша. Если после обновления в
wa-log/supercache.logвидно, что очистка не завершена (см. раздел «Если что-то пошло не так»), администратор может выполнить из корня Webasystphp wa-apps/shop/plugins/supercache/purge-upgrade.php: успех — строка «the file cache was cleared» и код выхода 0. 🔧
После обновления
Свёрнутый блок «После обновления плагина (с 3.1.7 или более старой версии)» на странице настроек: щёлкните по его заголовку, чтобы раскрыть (снимок 3.4.3 после обновления 3.4.2 → 3.4.3 движком установщика на стенде):
- Откройте настройки плагина и прочитайте блок состояния вверху: он назовёт один следующий шаг.
- Режим «Через сервер»: замените правила. Это обязательно для 3.4.3: см. главу 4. Режим «Через роутинг» правил не требует.
- Запустите «Проверку кеша». Ожидается «MISS, затем HIT». «Прямой серверный HIT подтверждён» появляется только после такого HIT в режиме «Через сервер».
- Добавьте cron для обслуживания (глава 6):
SupercachePluginStorage(раз в 10 минут), для Metadata v2SupercachePluginSweep(раз в 5 минут). Если раньше стоялSupercachePluginCacheDel«для лимита», замените его. - «Адаптивные изображения PRO». Если плагин установлен, опция в SuperCache выключена и сама не включается. Чтобы включить защиту: отметьте опцию, сохраните, переустановите правила сервера и один раз очистите кеш.
- Metadata v2 (по умолчанию выключен): если вы его уже включали, при профиле «Прежний» откройте «Проверку конфигурации»: выберите «Строгий», установите правила и выполните
php cli.php shop SupercachePluginEngine probes, либо выключите движокphp cli.php shop SupercachePluginEngine disable. Автоматически ничего не выключается. 🔧 - Если вы пропускали версии: при обновлении с 3.1.7 вы также получаете новые таблицы и настройки версий 3.2–3.4 (создаются автоматически); читайте и пункты выше.
Что изменилось с 3.1.7 для владельца магазина (кратко)
| Версия | Что нового для вас |
|---|---|
| 3.2.0 | Движок Metadata v2 (выключен по умолчанию); политика роботов по категориям; требуется PHP 8.2 |
| 3.3.0 | «Проверка кеша», «Проверка конфигурации», «Обход кеша для администратора» |
| 3.3.0–3.3.2 | «Состояние SuperCache», резерв места на диске, измерение кеша cron-заданием, ограничение размера кеша (Premium), действие «Постепенно удалять самые старые страницы» (с 3.3.2, Metadata v2) |
| 3.4.0 | Экспериментальное внешнее хранилище S3 (выключено), защита для «Адаптивные изображения PRO», однократная очистка кеша при обновлении |
| 3.4.1 | «Очистить одну страницу»; отзыв очищает только страницу товара; быстрая очистка в Metadata v2 |
| 3.4.2 | Блок состояния, «Как включить кеш», «Обслуживание (cron)»; исправлена главная страница, не сохранявшаяся при пустом кеше; очистка при смене картинок Images PRO |
| 3.4.3 | Исправления правил сервера (gzip в nginx, Vary, предупреждения is_bot), cookie supercache=no_cache учитывается и в режиме «Через роутинг» |
Если что-то пошло не так
- Блок состояния показывает «Требуется настройка» или «Состояние неизвестно»: выполните его единственный следующий шаг; при «неизвестно» обновите страницу и посмотрите
wa-log/supercache.log. - В
wa-log/supercache.logстрока «the public page cache was NOT cleared completely»: очистка повторяется при первом показе витрины и при открытии настроек; либо администратор выполнитphp wa-apps/shop/plugins/supercache/purge-upgrade.php. То, что не удалось удалить за время обновления, ждёт вне публичной папки (не отдаётся) и удаляется командойphp wa-apps/shop/plugins/supercache/purge-trash.php. 🔧 - Журнал Установщика:
wa-log/wa-installer/installer.log. Если обновление не удалось, установленный плагин остаётся прежним. - Быстрый безопасный откат режима «Через сервер»: глава 4.
Откат на прежнюю версию
- Откат средствами Установщика возвращает прежнюю папку плагина. После отката очистите кеш.
- Долго оставаться на 3.1.7 нельзя: она снова кеширует страницы заказа и кабинета. Если откат необходим (например, PHP остался 8.1), делайте его на короткое время и отключите кеш либо поднимите PHP.
- Перед возвратом на версию до 3.3.2 смените действие лимита размера, если выбрано «Постепенно удалять самые старые страницы»: прежние версии его не знают и кеш не ограничивают.
- После возврата и повторного обновления один раз нажмите «Очистить кеш»: однократная очистка выполняется один раз для номера версии.
- Откат с 3.4.3 на 3.4.2 в проверке релиза прошёл без проблем: настройки сохранились, страница открывалась, «Проверка кеша» давала MISS, затем HIT (стенд, Apache и nginx).
