We Free Обсудить задачу
Меню

Joomla обновили, сайт сломался: как сохранить новые заявки

Старая копия может вернуть рабочий сайт и одновременно убрать свежие заказы. Прежде чем восстанавливать Joomla, нужно установить, что изменилось после этой копии.

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

Сначала восстановить хронологию

Исполнителю нужны время контрольной копии, начало обновления и момент первого замеченного сбоя. Важно выяснить, меняли ли вместе с Joomla расширения, шаблон или PHP. Совпадение по времени помогает сузить поиск, но не доказывает, какой элемент вызвал ошибку.

Зафиксируйте точный текст сообщения и действие, на котором оно появляется. Исполнитель сопоставит это с журналами обновления и сервера, а также проверит состояние базы и системных расширений: эти проверки предусмотрены в официальном описании обновления Joomla. Серия повторных обновлений без фиксации состояния затрудняет разбор.

Между копией и сбоем появились данные

Граница риска — время создания копии, а не время появления ошибки. Даже если сайт сломался сразу после обновления, между копированием и запуском могли появиться заказы, заявки или правки редактора. Если часть функций продолжает работать, этот промежуток увеличивается и во время диагностики.

Составьте перечень изменений за весь интервал до согласованной остановки записи. Для разных типов данных важны разные признаки:

  • заявки: время, контакт, содержание обращения, сохранение на сайте и получение менеджером;
  • заказы: номер, состав, сумма, оплата, текущий статус и передача во внешнюю систему;
  • публикации: новые материалы, правки прежних текстов, изображения и изменения меню;
  • учетные записи: регистрации и изменения данных пользователей, если сайт их принимает.

Копия письма у менеджера помогает найти обращение, но не подтверждает, что оно сохранено на сайте. Аналогично оплаченный заказ может существовать у платежного сервиса и отсутствовать в восстанавливаемой базе. По каждому типу записей нужно определить источник для сверки и сотрудника, который подтвердит результат.

Перед откатом сохранить и текущее состояние

Попросите исполнителя сохранить файлы и базу аварийной версии отдельно от контрольной копии. Этот комплект нужен для извлечения новых данных и разбора сбоя, даже если сам сайт из него запускать нельзя. Заменять им единственную рабочую резервную копию нельзя.

До восстановления согласуйте, какие операции временно приостанавливают и куда поступают обращения на это время. Если запись продолжается, нужно учитывать и изменения, пришедшие уже после первой выгрузки. Иначе список для переноса устареет раньше завершения работ.

Новые данные переносят с учетом их связей: заказ относится к покупателю, содержит позиции и имеет историю статусов. Исполнитель должен проверить, сможет ли прежняя версия расширения принять эти записи, и исключить повторную отправку писем, заказов или платежных действий. Простое объединение двух баз не заменяет такой план; отдельно о границах этой задачи — в материале про восстановление базы сайта из копии.

Откат или исправление: два плана с учетом потерь

У каждого варианта должен быть понятный результат. Для исправления — установленная причина и проверяемый способ ее устранить на копии; для отката — проверенное восстановление прежнего состояния и порядок возврата накопившихся данных. Сравнивать только скорость запуска главной страницы недостаточно.

Joomla не поддерживает понижение версии поверх обновленной установки: изменения при обновлении могут быть необратимыми. Откат означает восстановление согласованной копии, а не замену новых файлов старыми при сохранении измененной базы. Окружение также должно соответствовать восстанавливаемому состоянию.

Если копия проверена, а новые записи можно безопасно вернуть, откат становится предметным вариантом. Если свежих изменений много и перенос еще не проверен, сначала нужно оценить исправление текущей версии. Для повторного перехода пригодится план из статьи «Обновление Joomla: как сохранить доработки старого сайта»; здесь главный вопрос — судьба данных, уже появившихся после контрольной точки.

Незавершенное обновление не всегда требует полного возврата

Файлы Joomla и структура базы обновляются в рамках одной процедуры, но сбой может оставить их в несогласованном состоянии. Официальный инструмент проверки базы обнаруживает такие расхождения и позволяет штатно обновить структуру. Это задача исполнителя после сохранения состояния и диагностики, а не повод владельцу править таблицы вручную.

Отдельно проверяют, установлены ли новые системные расширения: документация Joomla связывает их неполную установку в том числе с проблемами обновления базы. У стороннего расширения могут быть собственные послеустановочные действия, описанные разработчиком. Пока они не завершены, открывающаяся страница еще не подтверждает готовность функции; недостающие индексы также входят в проверку структуры.

Совместимость, переводы и ошибка токена

Совместимость Joomla с окружением сверяют по требованиям нужной ветки CMS, а расширений — по сведениям их разработчиков. Плагин обратной совместимости может поддерживать старый код, однако Joomla считает расширение полностью совместимым лишь при работе без такого плагина. Зависимость фиксируют отдельной задачей и проверяют на копии, а не отключают плагин вслепую на рабочем сайте.

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

Ошибка маркера безопасности, или токена, сама по себе не доказывает взлом. Joomla использует его, чтобы убедиться, что запрос отправлен с ее же страницы: это описано в документации о защите от CSRF. Сообщение возможно и у формы, которая долго оставалась открытой, — сеанс закончился, и токен перестал совпадать. При сбое сохранения после обновления исполнитель проверяет сеанс и обработку формы, сохраняя защиту включенной.

Приемка начинается со сверки записей

После исправления или отката сверьте сохраненный перечень новых данных с рабочим сайтом и внешними системами. Проверяйте не только наличие заказа, но и его состав, сумму, оплату и статус. Отдельно подтвердите, что перенос не создал дубли и не отправил повторные уведомления.

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

Причину сбоя и исправления включают в план повторного обновления. Его проводят на свежей копии с повторением приемки, а перед рабочим запуском заново определяют контрольную точку и порядок учета новых записей. Так предыдущая аварийная выгрузка не становится по ошибке основой следующего переноса.

Для оценки пришлите версии Joomla и PHP до и после обновления, время и текст ошибки, сведения о контрольной копии и перечень данных, появившихся после нее. Укажите, какие операции сайт продолжает принимать и какие сведения уже есть у менеджеров или во внешних системах.

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

Почему возникает ошибка при обновлении Joomla?
Причину определяют по составу обновления и журналам. Возможны незавершенное изменение структуры базы, недоустановленные системные расширения и несовместимость расширений с Joomla или PHP. Сам симптом не определяет причину.
Что делать при ошибке Joomla после обновления?
Зафиксировать время и текст ошибки, сохранить текущее состояние и учесть изменения после контрольной копии. Затем сравнить исправление текущей версии с проверенным восстановлением копии и переносом новых данных.
Что проверить после обновления Joomla?
Проверяют сохранение и получение заявок, заказы и их статусы, публикации, интеграции, структуру базы и ссылки на тестовый домен. Если используется плагин обратной совместимости, зависимость от него фиксируют отдельно.

Темыjoomlaобновлениевосстановление

Читать дальше