Как разворачивать сайт из резервной копии

Урок 6 из 7

10 мин

Легко

Немного теории

Сценарии, при которых появляется необходимость развернуть сайт из резервной копии:

  1. Некорректное обновление платформы.
  2. Критичные ошибки.
  3. Перенос сайта на новый сервер.

Для разворачивания сайта из резервной копии в случае потери его работоспособности необходимы:

  • cкрипт restore.php (можно скачать с официального сайта);
  • данные доступа к серверу для подключения по FTP/SSH, чтобы загрузить файл в корень сайта.

Далее нужно открыть адрес https://ваш_сайт/restore.php в браузере.

При разворачивании из резервной копии сама копия может располагаться:

  • В корне сайта.
  • В папке /bitrix/backup/.
  • На другом сервере в сети Интернет. Сетевой доступ к другому серверу должен быть открыт, текущий сервер попытается скачать резервную копию оттуда. Также на сайте должна быть отключена базовая http-аутентификация.
  • В облачном сервисе компании «1С-Битрикс».

Особенности разворачивания сайта из резервной копии

  • Если в резервной копии и на сайте, где происходит восстановление, есть папка .git, то при распаковке архива будут ошибки “Не могу записать файл”. Поэтому папку .git нужно исключать при создании резервной копии или удалять с сервера перед восстановлением.

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

    • /bitrix/.settings.php,
    • /bitrix/.settings_extra.php,
    • /bitrix/php_interface/dbconn.php,
    • /bitrix/php_interface/after_connect_d7.php.
  • Всю процедуру восстановления нужно выполнять со статического IP-адреса. Скрипт восстановления запоминает, кто запустил процедуру, и, если он внезапно сменится, вы увидите ошибку - «IP-адрес клиента изменился, продолжение невозможно». Есть 2 решения:

    • Начать сначала — снова скачать restore.php с официального сайта и загрузить на сервер.
    • Открыть скрипт restore.php на сервере в текстовом редакторе и заменить IP адрес в константе IP_LIMIT на ваш текущий. Тогда восстановление продолжится с места, на котором возникла ошибка.
      define('IP_LIMIT', '92.0.0.1')

Иногда восстановление сайта происходит некорректно и после завершения процесса на сайте появляется ошибка подключения к базе данных. В таком случае нужно проверить доступы для подключения к базе данных. Они хранятся в файле /bitrix/.settings.php и могут быть скопированы в /bitrix/php_interface/dbconn.php.

Чаще всего, в случае возникновения ошибки БД, доступы в этих файлах либо пустые, либо заполнены символом “*”. В таком случае необходимо указать подключение к БД.

Также после восстановления сайта из резервной копии, если не совпадает содержимое файлов .htaccess на сайте и в резервной копии, то файл из резервной копии будет заменён на .htaccess.restore, скрипт предупредит вас об этом в конце процесса восстановления и укажет на необходимость переименования файла.

Восстановление сайта из резервной копии также может осуществляться через административную панель. Подробнее этот сценарий мы рассмотрим в видео.

Практика

В этом видеоуроке вы научитесь разворачивать сайт из резервной копии. Это частый процесс при разработке и поддержке проектов.

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

Чтобы развернуть сайт из резервной копии, нам понадобятся сами файлы резервной копии, SSH или FTP-подключение и файл restore.php.

Как разворачивать сайт из резервной копии

5 мин