Администрирование · 11 мин
Как откатить 1С-Битрикс: восстановление сайта после обновления или сбоя
Как откатить 1С-Битрикс: восстановление из резервной копии, откат обновлений модулей, возврат файлов и базы данных. Пошаговые инструкции и типичные ошибки.
Под откатом 1С-Битрикс обычно понимают одну из трёх задач: вернуть сайт к состоянию до неудачного обновления ядра или модулей, восстановить данные после ошибочных действий в административной панели либо отменить изменения в шаблоне и коде. Инструменты для этого различаются, и выбирать их нужно исходя из того, что именно было испорчено.
Штатной кнопки «отменить обновление» в продукте «1С-Битрикс: Управление сайтом» нет. Основной и единственный надёжный способ полного отката — восстановление из резервной копии, созданной до проблемного изменения. Поэтому актуальность бэкапа определяет, насколько далеко назад вы сможете вернуться и какие данные при этом потеряете.
Ниже разобраны основные сценарии: откат через штатный механизм восстановления, возврат отдельных файлов и базы данных вручную, откат правок в шаблоне и действия в ситуации, когда резервной копии нет. Отдельно рассмотрены проверка результата и типичные ошибки, которые превращают восстановление в повторную поломку.
Определите, что именно нужно откатить
До начала работ важно точно установить масштаб проблемы. От этого зависит, достаточно ли вернуть пару файлов или потребуется полное восстановление сайта. Ошибочное обновление модуля, сломанный шаблон и удалённые элементы инфоблоков — три разные ситуации с разными способами решения.
Если сайт не открывается после обновления платформы, чинить отдельные файлы обычно бессмысленно: ядро и база данных могли обновиться рассогласованно, и корректный путь — полное восстановление из копии. Если же проблема возникла после правки одного шаблона компонента, достаточно вернуть этот файл, не трогая базу.
Проверьте, есть ли резервная копия до обновления
Вспомните, какие файлы правились последними
Проверьте корзину и журнал событий в админке
Смотрите лог ошибок веб-сервера и /bitrix/php_interface/dbconn.php
Подготовка перед восстановлением
Первое правило любого отката: перед восстановлением сделайте копию текущего, пусть и сломанного, состояния. Если откат пройдёт неудачно или вы выберете не ту резервную копию, у вас останется возможность вернуться к отправной точке. Снимите дамп базы данных и скопируйте файловую структуру сайта.
Второй шаг — закрыть сайт от посетителей. В административной панели это делается в настройках главного модуля опцией «Сайт закрыт для посетителей», либо через файл .htaccess с ограничением доступа по IP. Если админка недоступна, ограничьте доступ на уровне веб-сервера, чтобы пользователи и поисковые роботы не фиксировали промежуточное состояние.
Третий момент — проверьте, какая именно резервная копия будет использоваться. Дата создания копии должна предшествовать проблемному изменению. Убедитесь, что архив цел: штатный механизм Битрикса при создании копии показывает её размер и состав, а повреждённый архив при распаковке выдаст ошибку на середине процесса.
Откат через штатное восстановление резервной копии
Если административный раздел доступен, восстановление выполняется через раздел «Настройки → Инструменты → Резервное копирование». В списке копий выберите нужную и запустите восстановление. Система распакует архив, заменит файлы и выполнит SQL-дамп, возвращая базу данных к состоянию на момент создания копии.
Если админка недоступна, используется скрипт restore.php, который поставляется вместе с продуктом. Его нужно загрузить в корень сайта вместе с архивом резервной копии и открыть в браузере по адресу вашсайт/restore.php. Мастер пошагово проведёт через распаковку файлов и восстановление базы — потребуются параметры подключения к MySQL.
- 1Сделайте копию текущего состояния сайта и базы
- 2Загрузите restore.php и архив резервной копии в корень сайта
- 3Откройте /restore.php в браузере и выберите архив
- 4Дождитесь распаковки файлов, затем укажите доступы к базе данных
- 5Дождитесь завершения импорта дампа и удалите restore.php с сервера
- 6Проверьте работу сайта, авторизацию и ключевые страницы
Важная деталь: после восстановления базы из дампа старые данные, внесённые после создания копии, будут перезаписаны без возможности возврата. Именно поэтому предварительная выгрузка актуальных заказов и пользовательских данных обязательна на живом проекте.
Откат отдельных файлов и базы данных вручную
Когда проблема локальна — например, после правки шаблона сайта, файла init.php или отдельного компонента — полное восстановление избыточно. Достаточно вернуть прежнюю версию конкретных файлов. Источниками служат резервная копия хостинга, локальная копия проекта или система контроля версий, если она используется.
Если разработка ведётся через Git, откат правок выполняется штатными средствами: просмотр истории изменений и возврат нужного состояния файла. Это самый управляемый способ — видно, кто, когда и что изменил, и можно отменить ровно одно изменение, не затрагивая остальное.
Для отката только базы данных используется дамп MySQL. Восстановление выполняется через phpMyAdmin или консоль. Учтите, что частичный откат базы при обновлённом ядре опасен: структура таблиц могла измениться обновлением, и старая версия данных окажется несовместимой с новым кодом.
mysql -u user -p database_name < backup_dump.sqlОткат обновлений модулей и решений из Marketplace
Обновления сторонних модулей откатываются тем же способом, что и ядро: восстановлением файлов модуля из копии и, при необходимости, откатом связанных таблиц базы. Сам модуль обычно располагается в каталоге /bitrix/modules/ или /local/modules/, его прежнюю версию можно взять из резервной копии.
Если после обновления решения сломалась только часть функционала, иногда достаточно вернуть файлы модуля, не трогая базу. Но это работает, только если обновление не меняло структуру данных. Когда обновление создавало новые таблицы или поля, файлы старой версии могут не работать с изменённой базой — тогда откатывать нужно и то, и другое.
Что делать, если резервной копии нет
Ситуация без бэкапа неприятная, но не всегда безнадёжная. Первым делом проверьте резервные копии на стороне хостинга: многие хостинг-провайдеры хранят автоматические копии файлов и баз данных за несколько последних дней, и восстановление доступно из панели управления хостингом.
Если и там пусто, остаётся точечное исправление. По логам ошибок PHP определите сбойный файл и вручную верните ему рабочее состояние — например, закомментировав проблемный код или восстановив файл из дистрибутива соответствующей версии продукта. Дистрибутивы ядра доступны в разделе обновлений при активной лицензии.
Удалённые элементы инфоблоков без копии восстановить практически невозможно, если они не попали в корзину. Поэтому после такого инцидента первоочередная задача — настроить регулярное резервное копирование, чтобы ситуация не повторилась.
Как выбрать действие
Проверка результата и типичные ошибки
После отката проверьте сайт комплексно: открытие главной и типовых страниц, авторизацию в админке, работу поиска, корзины и оформления заказа, отправку форм. Также загляните в «Настройки → Инструменты → Проверка системы» — штатная диагностика покажет проблемы с правами на файлы и конфигурацией.
Обязательно очистите кеш после восстановления: в админке через «Настройки → Настройки продукта → Автокеширование» или удалением содержимого каталогов кеша. Устаревший кеш часто маскирует успешный откат, показывая старую сломанную версию страниц.
Как проверить результат
Открываются без ошибок, корректная вёрстка
Белый экран, ошибка 500 или битая вёрстка
Вход выполняется, разделы открываются
Ошибка подключения к базе или циклический редирект
Заказ создаётся, письмо уходит
Ошибка на шаге оформления
Диагностика без критических замечаний
Ошибки прав доступа или структуры БД
Как предотвратить необходимость отката
Лучший откат — тот, который не понадобился. Настройте регулярное резервное копирование штатным механизмом Битрикса с хранением копий в облаке или на отдельном сервере. Периодичность зависит от интенсивности изменений: для магазина с ежедневными заказами копия базы нужна минимум раз в сутки.
Перед любым обновлением ядра или модулей создавайте копию вручную и проверяйте её целостность. Крупные обновления безопаснее сначала применять на тестовой копии сайта — это позволяет выявить несовместимости, не рискуя рабочим проектом.
Доработки шаблонов и компонентов ведите через систему контроля версий. Тогда откат любого изменения займёт минуты и не потребует восстановления всего сайта из архива.
Что важно запомнить
Откат 1С-Битрикс — это восстановление из резервной копии через админку или restore.php, либо точечный возврат файлов и дампа базы. Перед восстановлением снимите копию текущего состояния, выгрузите новые данные и закройте сайт от посетителей. После отката очистите кеш и прогоните проверку системы.
Частые вопросы
Можно ли откатить обновление ядра Битрикса без резервной копии?
Полноценно — нет. Обновление меняет и файлы, и структуру базы данных, обратной процедуры не предусмотрено. Без копии остаётся восстанавливать файлы из дистрибутива нужной версии и вручную устранять рассогласования с базой, что трудоёмко и не гарантирует результата.
Где Битрикс хранит резервные копии по умолчанию?
По умолчанию архивы сохраняются в каталоге /bitrix/backup/ внутри структуры сайта. При настройке копирования можно указать облачное хранилище — тогда копии дополнительно выгружаются туда. Хранить единственный экземпляр копии только на том же сервере, где работает сайт, рискованно.
Что делать, если восстановление через restore.php зависло?
Чаще всего процесс прерывается из-за ограничений сервера по времени выполнения скрипта или нехватке памяти. Обновите страницу — мастер обычно продолжает с места остановки. Если проблема повторяется, распакуйте архив вручную по FTP, а базу импортируйте через phpMyAdmin или консоль MySQL.
Откатятся ли заказы интернет-магазина при восстановлении копии?
Да, заказы хранятся в базе данных, и при восстановлении дампа база вернётся к состоянию на момент создания копии. Все заказы, оформленные позже, исчезнут. Перед откатом выгрузите их, чтобы после восстановления внести вручную или через импорт.
Как откатить только изменения в шаблоне сайта?
Достаточно вернуть прежние версии файлов шаблона из каталога /bitrix/templates/ или /local/templates/. Источник — резервная копия, Git или копия хостинга. Базу данных трогать не нужно, если правки касались только вёрстки и логики вывода.
Безопасно ли обновлять Битрикс сразу после выхода обновления?
Разумнее сначала создать полную резервную копию и, при возможности, проверить обновление на тестовой копии сайта. Массовые обновления ядра иногда выявляют несовместимости со сторонними модулями и кастомными доработками, которые лучше обнаружить не на рабочем проекте.