Администрирование · 11 мин
Как откатить изменения в 1С-Битрикс
Как откатить изменения в 1С-Битрикс: восстановление из резервной копии, отмена правок в коде и базе, контроль версий, типичные ошибки и проверка результата.
Откат изменений в 1С-Битрикс требуется в трёх типичных ситуациях: после неудачного обновления платформы или модулей, после ошибочной правки шаблона или кода компонента и после некорректного изменения данных в административном разделе. В каждом случае порядок действий разный, и смешивать их нельзя: восстановление базы не вернёт файлы, а восстановление файлов не исправит повреждённые данные.
Главное правило — до начала любых правок на рабочем сайте должна существовать свежая резервная копия. В Битриксе есть встроенный механизм резервного копирования, который сохраняет и файлы, и базу данных в один архив. Если копии нет, варианты отката сужаются до ручной правки кода и частичного восстановления через механизмы версионирования, которые есть не везде.
Ниже разобраны основные сценарии: откат через резервную копию, восстановление после обновления, возврат правок в шаблонах и компонентах, отмена изменений в инфоблоках и настройках, а также проверка результата и типичные ошибки.
Первым делом определите, что именно нужно откатить
Прежде чем что-то восстанавливать, локализуйте проблему. От этого зависит и объём отката, и риск потерять полезные данные. Полный откат всего сайта — крайняя мера: вместе с ошибкой вы потеряете заказы, регистрации пользователей и другие данные, появившиеся после создания копии.
Типичные признаки помогают быстро сузить круг. Сайт полностью недоступен или показывает белый экран — вероятнее всего, проблема в файлах ядра или критичной ошибке PHP после обновления. Ошибка только на конкретных страницах — скорее правка шаблона компонента или шаблона сайта. Некорректные данные в каталоге или на страницах — изменения в инфоблоках или настройках.
Лог ошибок сервера, файл /bitrix/php_interface/dbconn.php, последние правки в init.php
Какие шаблоны редактировались последними, история изменений файлов
История изменений элемента, журнал событий
Лог обновлений, версия ядра до и после
Откат через резервную копию Битрикса
Штатный механизм восстановления находится в административном разделе: «Настройки → Инструменты → Резервное копирование → Список резервных копий». Выберите подходящую копию по дате создания — она должна быть сделана до проблемного изменения, но как можно ближе к нему, чтобы минимизировать потерю данных.
При восстановлении система распакует архив и заменит файлы и базу данных состоянием на момент копирования. Процесс может занять от нескольких минут до часа и более в зависимости от размера сайта. На это время сайт будет недоступен посетителям, поэтому восстановление на посещаемом проекте лучше проводить в период минимальной нагрузки.
- 1Убедитесь, что резервная копия создана до проблемного изменения, и запишите её дату
- 2Сохраните отдельно данные, появившиеся после создания копии: выгрузите заказы, новых пользователей, формы обратной связи
- 3Перейдите в «Настройки → Инструменты → Резервное копирование», выберите копию и запустите восстановление
- 4Дождитесь завершения, не закрывая страницу и не перезапуская процесс
- 5Проверьте работу сайта: главная страница, каталог, оформление заказа, вход в админку
- 6Верните сохранённые данные вручную или через импорт
Откат после неудачного обновления платформы
Обновления модулей и ядра устанавливаются через «Marketplace → Обновление платформы». Перед установкой система предлагает создать резервную копию — не пропускайте этот шаг, именно эта копия станет основным способом отката, если после обновления сайт перестанет работать.
Штатной кнопки «откатить обновление» в Битриксе нет. Возврат к предыдущей версии выполняется только восстановлением из резервной копии, созданной до обновления. Если копии нет, а сайт упал, остаётся ручной путь: восстановить файлы из копии хостинга (многие хостинг-провайдеры делают свои бэкапы) или разворачивать сайт заново из дистрибутива с последующим подключением старой базы — это сложная операция, которую лучше поручить специалисту.
Иногда проблема после обновления вызвана не самим ядром, а несовместимостью стороннего модуля. Проверьте лог ошибок: если виноват конкретный модуль, временно отключите его, переименовав папку модуля в /bitrix/modules/ или через список модулей, если админка доступна. Это позволит поднять сайт без полного отката.
Отмена правок в шаблонах и коде
Если проблема возникла после редактирования шаблона сайта, шаблона компонента или файлов в /bitrix/php_interface/, откатить изменения можно без затрагивания базы данных. Самый надёжный способ — система контроля версий Git: если проект под версионным контролем, возврат к предыдущему состоянию файлов занимает одну команду.
git log --oneline -10
git diff HEAD~1 -- local/templates/mytemplate/
git checkout HEAD~1 -- local/templates/mytemplate/Если Git не используется, ориентируйтесь на резервные копии файлов. Многие редакторы и панели хостинга хранят предыдущие версии; встроенный редактор Битрикса также показывает историю изменений файла в файловом менеджере, если включено версионирование документов. В крайнем случае шаблон компонента можно удалить и скопировать заново из стандартной поставки — вы потеряете кастомизацию, но вернёте работоспособность.
Отдельно проверьте файл init.php в /bitrix/php_interface/: синтаксическая ошибка в нём часто приводит к полной недоступности сайта. Достаточно вернуть предыдущую версию файла или закомментировать последний добавленный блок, чтобы сайт снова открылся.
Отмена изменений в данных: инфоблоки, страницы, настройки
Изменения контента откатываются иначе, чем изменения кода. Для элементов инфоблоков в Битриксе есть история изменений: откройте элемент на редактирование и перейдите на вкладку с историей, если она включена для данного инфоблока. Там видно, кто и что менял, а в ряде конфигураций доступен возврат к предыдущим значениям полей.
Для статических страниц и включаемых областей действует механизм версионирования документов: в файловом менеджере у файла можно посмотреть список версий и восстановить нужную. Это работает, если версионирование не отключено в настройках главного модуля.
Изменения настроек модулей (параметры каталога, почтовые события, права доступа) историей не покрываются. Их откатывают вручную, поэтому полезная привычка — перед масштабной перенастройкой делать скриншоты текущих значений или выгружать настройки. Если изменений было много и восстановить их вручную нереально, остаётся восстановление базы из копии с потерей свежих данных.
Способы отката по типу изменений
Подходит для отката обновлений и масштабных поломок. Ограничение: теряются все данные, появившиеся после создания копии.
Подходит для правок шаблонов, компонентов, init.php. Ограничение: не затрагивает базу данных.
Подходит для отмены правок конкретных товаров и страниц. Ограничение: работает только если история включена заранее.
Подходит для точечных изменений параметров модулей. Ограничение: требует, чтобы прежние значения были зафиксированы.
Проверка результата и типичные ошибки
После любого отката проверьте сайт комплексно, а не только ту страницу, где была ошибка. Минимальный контур: главная страница, типовой раздел каталога, карточка товара, добавление в корзину и оформление заказа, форма обратной связи, вход в административный раздел. Также загляните в лог ошибок PHP — там не должно быть свежих критических записей.
Как проверить результат
Разделы и карточки открываются без ошибок
Белый экран, 500-я ошибка, пустые блоки
Товар добавляется в корзину, заказ оформляется
Ошибки на шагах оформления, не уходят письма
Нет новых Fatal error после отката
Свежие ошибки сразу после восстановления
Соответствует состоянию до проблемного обновления
Частично обновлённые модули, рассинхрон версий
Профилактика: как сделать следующий откат простым
Настройте регулярное автоматическое резервное копирование средствами Битрикса или хостинга и периодически проверяйте, что копии действительно создаются и скачиваются. Копия, которую нельзя восстановить, бесполезна — хотя бы раз разверните её на тестовом окружении.
Подключите Git для каталога с шаблонами и кастомным кодом, а крупные изменения сначала проверяйте на копии сайта. Перед обновлением платформы фиксируйте текущую версию модулей и делайте копию вручную, даже если автоматическая настроена. Эти приёмы сокращают откат с часов до минут.
Что важно запомнить
Основной инструмент отката в 1С-Битрикс — восстановление из резервной копии, но оно стирает свежие данные. Правки кода отменяют через Git или историю файлов, правки контента — через историю изменений и версии документов. Перед любым откатом сохраните данные, появившиеся после создания копии, а после — проверьте весь контур работы сайта.
Частые вопросы
Можно ли откатить обновление Битрикса без резервной копии?
Штатного механизма отката обновлений нет. Без собственной копии остаются бэкапы хостинга — уточните у провайдера, какие точки восстановления доступны. Если и их нет, потребуется ручное восстановление файлов и базы, что на практике выполнимо только с привлечением разработчика.
Что будет с заказами, если восстановить сайт из копии недельной давности?
Все заказы, регистрации, оплаты и обращения, созданные после даты копии, будут удалены вместе с текущей базой. Перед восстановлением выгрузите их через экспорт заказов или сохраните нужные записи вручную, а после отката внесите обратно.
Сайт упал после правки init.php, админка не открывается. Что делать?
Подключитесь к серверу по FTP или SSH и верните предыдущую версию файла /bitrix/php_interface/init.php либо закомментируйте добавленный блок. Для доступа к админке правки в этом файле не нужны — достаточно устранить синтаксическую ошибку.
Как узнать, кто и когда изменил элемент инфоблока?
Откройте элемент на редактирование: вкладка с историей изменений показывает пользователя, дату и изменённые поля, если история включена в настройках инфоблока. Дополнительно общий журнал событий в административном разделе фиксирует действия пользователей.
Можно ли откатить только один шаблон компонента, не трогая весь сайт?
Да. Если используется Git — верните предыдущую версию конкретной папки шаблона. Без Git удалите кастомный шаблон и скопируйте стандартный из папки компонента в /bitrix/components/, после чего заново внесите нужные правки. База данных при этом не затрагивается.
Как часто нужно делать резервные копии?
Ориентируйтесь на допустимый объём потери данных: для магазина с ежедневными заказами разумна ежедневная копия, для редко обновляемого сайта — еженедельная. Дополнительно делайте копию вручную перед каждым обновлением платформы и перед масштабными правками.