Почему ваш магазин OpenCart постоянно ломается после обновлений (и как остановить это кровотечение)
Вы просыпаетесь от электронного письма от вашего хостинг-провайдера: доступно обновление безопасности. Вы думаете: "Отлично, я обновлю это сегодня". Через три часа ваш магазин не работает. Ваши клиенты видят сообщения об ошибках. Продажи останавливаются. Вы паникуете и понятия не имеете, как это произошло.
Если вы управляете магазином OpenCart, этот кошмар, наверное, вам знаком. Каждое обновление ощущается как игра в русскую рулетку — иногда всё работает хорошо, иногда ваш веб-сайт полностью падает. Почему это постоянно происходит? Что важнее, что вы на самом деле можете с этим сделать?
Правда в том, что вы не одиноки. Тысячи владельцев малого бизнеса сталкиваются с этой проблемой. И хорошая новость: её обычно можно предотвратить.
Обновления ломают ваш магазин, потому что расширения не работают вместе
Вот в чём дело с OpenCart: это как автомобиль с большим количеством неоригинальных запчастей. Ваш базовый магазин — это шасси, но вы, вероятно, добавили платёжные системы, калькуляторы доставки, менеджеры запасов и кто-знает-что ещё. Каждое из этих "расширений" или "плагинов" сделано разными людьми с использованием разных методов.
Когда OpenCart выпускает обновление, он меняет работу основной системы. В большинстве случаев эти изменения незаметны для ваших расширений. Но иногда? Иногда одно из ваших расширений делало что-то, что полагалось на старый способ работы. Когда OpenCart обновляется, это расширение ломается.
Это как если бы производитель вашего автомобиля изменил работу топливной системы, но ваш хитроумный неоригинальный турбонаддув был разработан для старой топливной системы. Турбонаддув перестаёт работать, пока кто-то не перепишет его для новой системы.
Хуже всего то, что вы не можете знать, какие расширения сломаются, пока на самом деле не сделаете обновление. Вы могли бы сначала протестировать на копии для практики (о чём мы поговорим), но даже тогда вам нужно знать, как это настроить.
Скрытая цена сломанных обновлений
Когда ваш магазин ломается, вы теряете не только продажи на несколько часов. Вы теряете доверие клиентов. Кто-то пытался что-то купить, наткнулся на страницу ошибки и ушёл к вашему конкуренту. Они могут не вернуться.
Вы также теряете время. Ли вы исправляете это самостоятельно, тратя часы на устранение неисправностей, ли платите кому-то за исправление — это деньги, которые ушли. Во многих случаях речь идёт о суммах от 300 до 2000 долларов, в зависимости от того, насколько всё сломано.
Затем есть риск безопасности. Вы отложили обновление, потому что нервничали, но теперь ваш магазин работает на старом, уязвимом коде. Кто-то может взломать его и украсть данные клиентов. Юридические проблемы от этого намного хуже, чем стоимость обновления.
Плюс, вот что больше всего болит: обновление должно было защитить вас, а вместо этого вызвало проблемы. Этого достаточно, чтобы любой владелец бизнеса начал бояться обслуживания.
Почему вы не можете просто игнорировать обновления
"Я просто пропущу это обновление", — думаете вы. "Зачем рисковать?"
Потому что обновления OpenCart не являются необязательными. Это патчи безопасности. Это исправления ошибок, которые поддерживают бесперебойную работу вашего магазина. Игнорировать их — это как не запирать входную дверь: возможно, сегодня ничего плохого не случится, но со временем кто-то этим воспользуется.
Старое, неисправленное программное обеспечение — это открытое приглашение для хакеров. Они точно знают, какие уязвимости искать. Ваша платёжная информация клиентов, ваши бизнес-данные, вся ваша операция под угрозой.
Ирония болезненна: вы не обновляете, потому что боитесь сломать свой магазин. Но необновление со временем обязательно его сломает — просто намного худшим способом.
Что на самом деле происходит во время обновления (простыми словами)
OpenCart отправляет вам уведомление, что версия 3.0.3.6 готова. Вы нажимаете "обновить". За кулисами OpenCart:
- Загружает новые файлы, которые заменяют старые
- Выполняет обновление базы данных (организует ваши данные по-новому)
- Проверяет, всё ли ещё работает с вашими расширениями
- Возвращает ваш магазин в онлайн
Шаг 3 — это то, где что-то идёт не так. Если расширение не было создано для работы с новой версией, вещи ломаются на шаге 4. Ваш магазин возвращается в онлайн, но сломанным.
Обычно вы увидите один из этих признаков:
- Белая пустая страница вместо вашего магазина
- Сообщение "Ошибка 500"
- Ваша корзина для покупок не работает
- Ваша платёжная система офлайн
- Товары отображаются неправильно
Каждый из этих признаков означает, что что-то в цепочке сломалось, и вам нужно это исправить, прежде чем клиенты смогут покупать.
Как защитить свой магазин перед обновлениями
Шаг 1: Сделайте резервную копию всего. Войдите в панель администрирования вашего хостинга (cPanel, Plesk и т.д.). Найдите раздел «Backup» или «Резервное копирование». Выберите создать полную резервную копию (все файлы и база данных). Загрузите её на компьютер или в облачное хранилище. Если ваш хостинг не имеет встроенного бекапа, установите плагин OpenCart «Backup and Restore» из официального маркетплейса (бесплатно). Стоимость: обычно бесплатно или до 20 долларов в месяц. Это не подлежит обсуждению.
Шаг 2: Сначала протестируйте на клоне. Войдите в cPanel. Найдите инструмент «Staging» или «Softaculous» (если установлен). Выберите ваш магазин OpenCart и нажмите «Create Staging». Если такого нет, обратитесь в техподдержку хостинга с просьбой создать тестовую копию. После создания войдите в админку тестового сайта (отдельный URL) и выполните обновление там. Посмотрите, что ломается, и исправьте это перед обновлением реального магазина.
Шаг 3: Обновляйте поэтапно. В админке тестового магазина перейдите в Система -> Обновления. Перед обновлением проверьте текущую версию (Система -> Информация). Если разница больше чем одна минорная версия (например, с 2.3 на 3.0), сначала обновите до промежуточной версии. Для этого загрузите нужную версию с официального сайта OpenCart и загрузите файлы через FTP или менеджер файлов хостинга. Каждый маленький шаг безопаснее, чем один большой прыжок.
Шаг 4: Выбирайте расширения тщательно. Перед покупкой расширения проверьте его совместимость с вашей версией OpenCart на странице маркетплейса. Ищите расширения с пометкой «Совместимо с версией X.X.X» и положительными отзывами. Избегайте тех, которые не обновлялись больше года. Расширения из официального маркетплейса с большей вероятностью останутся совместимыми.
Шаг 5: Ведите список ваших расширений. В админке перейдите в Расширения -> Управление расширениями. Здесь отображаются все установленные расширения. Запишите их названия и версии. Также обратите внимание на авторов — это поможет при возникновении проблем знать, к кому обратиться.
Путь вперёд
Обновления всегда будут частью ведения интернет-магазина. Но они не должны быть страшными. С резервными копиями, тестовыми средами и чётким планом вы можете обновляться безопасно. Большинство обновлений пройдут гладко. Те, что не пройдут? У вас будет резервная копия, к которой можно вернуться.
Если вы выполнили шаги выше, но всё ещё имеете проблемы, или не хотите делать это самостоятельно, команда DevCev Digital готова помочь с безопасным обновлением и поддержкой вашего магазина OpenCart.