Восстановление многосайтового битрикса из архива
В последнее время все чаще поступают вопросы: а как восстановить битрикс с многосайтовой структурой из бэкапа. В связи с этим в своей статье я подробно опишу данный процесс.
Инструменты для работы:
- ОС windows 1)putty
2)WinsCP - Unix — стандартный терминал
- Начнем мы с того, что с помощью скрипта bitrix_server_test.php выясним готов ли сервер для установки битрикса.
Необходимые настройки сервера вы можете узнать здесь. В лучшем случае, все пункты представленного списка должны быть “зелеными”.


Следующим этапом мы развернем архив бэкапа на нашем сервере, восстановим базу данных и настроим на нем структуру папок.
Найдем на нашем настроенном сервере корневую папку сайта (Обычно для битрикса это /home/bitrix/www/ ) и загрузим архив в эту директорию. Далее развернем архив в этой директории. Для этого в терминале нужно прописать команду : tar xvfz archive.tar.gz (вместо archive.tar.gz нужно написать название вашего архива). Важно разделить структуры сайтов и ядра битрикс. Фактически в директории отдельного сайта не будет храниться ядро, а только лишь ссылка на единые папки /bitrix/ и /upload/ . Для этого в корне сайта создаем папку /share/ , в которой разместим папки /bitrix/ и /upload/ . Это и будет единым центром создаваемой структуры. Оставшиеся директории нужно распределить по папкам сайтов. Все дальнейшие примеры показаны на основе 3-х сайтов: site1, site2, site3.
-
Папки /bitrix/ и /upload/ копируем в одну папку(share). Остальные папки с сайтами должны лежать в отдельных папках в этом же каталоге. В итоге должна получиться структура, схожая со структурой на изображении. Настраиваем доступ к ядру из каждого сайта при помощи символьных ссылок. Для это пишем команду:
ls -s /home/bitrix/www/share/bitrix/ /home/bitrix/www/site1/
ls -s /home/bitrix/www/share/upload/ /home/bitrix/www/site2/

Результат:
И так для каждого сайта. Дальше, нужно разобраться с базой данных (в архиве должен присутствовать файл file_name.sql ).
Обычно, используется субд Mysql поэтому заходим в mysql, создаем пользователя, создаем базу данных, даем все права нашему новому пользователю на базу данных.
mysql -u root -p
create database database_name;
GRANT ALL PRIVILEGES ON database_name.* TO ‘my_user’@’localhost’

mysql -u my_user -p database_name < file.sql
/etc/nginx/bx/site_avaliable
/etc/nginx/bx/site_enabled

В папке site_avaliable хранится файл с конфигурацией сайта, а в папке site_enabled хранится ссылка на этот файл, но чтение nginx’ом конфига происходит из папки site_enabled . Заполняем файл в соответствии с нашим сайтом. В данном случае nginx перенаправляет все запросы от пользователя на Apache(httpd), который решает что открыть, как открыть, откуда открыть. Перейдем к конфигурации apach’a:
/etc/httpd/bx/
Читаем что написано в конфигах, откуда апач читает конфиги. В данном случае, для удобства, все конфиги каждого сайта лежат в папке custom .
/etc/httpd/bx/custom
Там, где указан site1 , вставляем путь к папке вашего сайта. Там, где указана папка share , пишем путь к папке, с ядром битрикса (папка bitrix ) и папке upload .
Откроется страница с параметрами и на стройками сайта: 
Поля, обязательные к заполнению битрикс выделяет звездочками.
Так же для корректного запуска сайта заполняем:
- доменное имя
- папка сайта (пишем корень “/” потому что битрикс читает этот путь отностительно пути “Путь к корневой папке. ”)
- Не забываем про URL сервера
- Путь к корневой папке, путь к папке сайта на сервере.
Остальные сайты в битриксе настраиваются аналогично.
На этом восстановление многосайтового битрикса завершено.
Спасибо за внимание!
Восстановление многосайтового битрикса из архива

В последнее время все чаще поступают вопросы по поводу восстановления 1С-Битрикс с многосайтовой структурой из бэкапа. В этой статье я подробно опишу данный процесс.
Инструменты для работы:

- ОС Windows: Putty / WinSCP
- Unix: стандартный терминал
Начнем мы с того, что с помощью скрипта bitrix_server_test.php выясним готов ли сервер для установки битрикса.
Необходимые настройки сервера вы можете узнать здесь. В лучшем случае, все пункты представленного списка должны быть “зелеными”.
Следующим этапом мы развернем архив бэкапа на нашем сервере, восстановим базу данных и настроим на нем структуру папок.
Найдем на нашем настроенном сервере корневую папку сайта (Обычно для битрикса это /home/bitrix/www/ ) и загрузим архив в эту директорию. Далее развернем архив в этой директории. Для этого в терминале нужно прописать команду : tar xvfz archive.tar.gz (вместо archive.tar.gz нужно написать название вашего архива).
Важно разделить структуры сайтов и ядра битрикс. Фактически в директории отдельного сайта не будет храниться ядро, а только лишь ссылка на единые папки /bitrix/ и /upload/ . Для этого в корне сайта создаем папку /share/ , в которой разместим папки /bitrix/ и /upload/ . Это и будет единым центром создаваемой структуры.
Оставшиеся директории нужно распределить по папкам сайтов.
Все дальнейшие примеры показаны на основе 3-х сайтов: site1, site2, site3.
-
Папки /bitrix/ и /upload/ копируем в одну папку(share). Остальные папки с сайтами должны лежать в отдельных папках в этом же каталоге.

В итоге должна получиться структура, схожая со структурой на изображении выше. Настраиваем доступ к ядру из каждого сайта при помощи символьных ссылок. Для этого пишем команду:
ln -s /home/bitrix/www/share/bitrix/ /home/bitrix/www/site1/
ln -s /home/bitrix/www/share/upload/ /home/bitrix/www/site2/

Результат:
Эти действия нужно повторить для каждого сайта. Далее нужно разобраться с базой данных (в архиве должен присутствовать файл file_name.sql ). Обычно, используется субд Mysql поэтому заходим в mysql, создаем пользователя, создаем базу данных, даем все права нашему новому пользователю на базу данных.
mysql -u root -p
create database database_name;
GRANT ALL PRIVILEGES ON database_name.* TO ‘my_user’@’localhost’

mysql -u my_user -p database_name < file.sql
/etc/nginx/bx/site_avaliable
/etc/nginx/bx/site_enabled

В папке site_avaliable хранится файл с конфигурацией сайта, а в папке site_enabled хранится ссылка на этот файл, но чтение nginx’ом конфига происходит из папки site_enabled . Заполняем файл в соответствии с нашим сайтом. В данном случае nginx перенаправляет все запросы от пользователя на Apache(httpd), который решает что открыть, как открыть, откуда открыть. Перейдем к конфигурации apach’a:
/etc/httpd/bx/
Читаем то, что написано в конфигах, откуда Apache читает конфиги. В данном случае, для удобства, все конфиги каждого сайта лежат в папке custom .
/etc/httpd/bx/custom

Там, где указан site1 , вставляем путь к папке вашего сайта. Там, где указана папка share , пишем путь к папке, с ядром битрикса (папка bitrix ) и папке upload .
Переходим к настройкам битрикса:
Заходим в настройки сайтов (администрирование -> настройки -> сайты -> список сайтов ). Выбираем сайт, например, site1 .
Откроется страница с параметрами и настройками сайта:
Поля, обязательные к заполнению, битрикс выделяет звездочками.
Для корректного запуска сайта необходимо заполнить:
- доменное имя
- папка сайта (пишем корень “/” потому что битрикс читает этот путь отностительно пути “Путь к корневой папке. ”)
- Не забываем про URL сервера
- Путь к корневой папке, путь к папке сайта на сервере.
Остальные сайты в битриксе настраиваются аналогично.
Как восстановить многосайтовый архив битрикс
Многосайтовость
- Описание курса
- Введение
- Использование многосайтовой версии
- Чем определяется количество сайтов в системе
- Языковые версии сайта
- Многоязычность
- Технология переноса посетителей между сайтами
- Конфигурирование многосайтовости
- Создание и настройка сайта
- Настройки языков
- Как система различает сайты
- Многосайтовость на одном домене
- Многосайтовость на разных доменах
- Многосайтовость на разных доменах на IIS
- Псевдомногосайтовость на разных доменах
- Примеры настроек сервера Apache
- Выделение разделов сайта в поддомены
- Авторизация при поддоменности на разных установках
- Работа со структурой сайта
- Какие объекты можно позиционировать по сайтам
- Какие настройки модулей разделяются по сайтам
- Какую статистику можно анализировать в разрезе по сайтам
- Как закрыть только один из сайтов для посещения пользователей
- Компонент для переключения сайтов
- Мастер-класс
- Резервное копирование при многосайтовости
- Удаление сайтов
- Страница ошибки 404 при многосайтовости
Резервное копирование при многосайтовости
Просмотров: 11090
Дата последнего изменения: 05.07.2023
Ольга Пичужкина
Сложность урока:
3 уровень — средняя сложность. Необходимо внимание и немного подумать.
Особенности резервного копирования при многосайтовости на разных доменах
- Создавать резервные копии можно для любого сочетания существующих в системе файлов. Просто отметьте «птичками» в форме нужные сайты.
- База данных полностью копируется в архив. Даже тех сайтов, которые не были отмечены «птичками».
- Восстановление сайтов потребует дополнительных действий со стороны администратора:
- Учтите, что из выбранных сайтов в состав архива полностью копируется только первый по сортировке в списке. Соответственно, при восстановлении в полностью работоспособном состоянии восстанавливается только этот сайт.
- Публичная часть остальных сайтов сохраняется в архиве в папках вида /bitrix/backup/sites/_ID_сайта_ . При распаковке архива появится предупреждение, что в нём содержится несколько публичных частей. После распаковки администратор должен будет вручную перенести папки сайтов в соответствующие папки на сервере.
- Многосайтовость надо восстановить вручную (восстановить симлинки). Только после этого остальные сайты будут работоспособны.
Внимание! Подробно о резервном копировании рассказано в отдельной главе главе в курсе Администратор.Базовый.
Новинки документации в соцсетях:
Курсы разработаны в компании «1С-Битрикс»
Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Как восстановить многосайтовый архив битрикс
Текущую редакцию Вашего 1С-Битрикс можно просмотреть на странице Обновление платформы ( Marketplace > Обновление платформы ).
Ограничений нет

Понадобилось восстановить сайт или отдельные файлы? Регулярно создавайте резервные копии, чтобы у вас всегда был под рукой свежий бекап . А как восстановить сайт, расскажем в уроке.
Запуск восстановления
Для запуска восстановления сайта на странице Список резервных копий ( Настройки > Инструменты > Резервное копирование > Список резервных копий ) в меню действий выберите пункт Восстановить.

Примечание: Меню действий может отличаться для разных видов архивов, в зависимости от настроек при создании, порядка сохранения и удаления копий, настройки прав доступа на папки и файлы. Например, бекап, хранящийся в облаке 1С-Битрикс, можно только восстановить, но не скачать. Или же меню действий будет ограничено при ограничении прав на папку /backup/.
Система запустит мастер восстановления из резервной копии.
Другой способ — использовать скрипт restore.php. Обычно используется при переносе сайта на другой хостинг или если у вас нет доступа к административной части сайта (из-за сбоя или ошибок).
- Перенос продукта «1C-Битрикс»;
- Перенос сайтов в многосайтовой конфигурации.
Примечание: Модули Маркетплейса Маркетплейс (MarketPlace) — это каталог готовых решений для продуктов 1С-Битрикс: Управление сайтом или Корпоративный портал.
Стороннее решение из MarketPlace можно поставить как на этапе установки продукта «1C-Битрикс: Управление сайтом», так и после запуска проекта.
Подробнее. привязываются к лицензионному ключу.
Поэтому если Вы приобрели и установили на сайт модуль Маркетплейса, а потом восстановили сайт из резервной копии, сделанной до установки модуля, то можете заново установить этот модуль (если только не закончился оплаченный период этого модуля).
Учтите, что некоторые модули используют базу данных сайта, поэтому лучше создавать резервную копию сайта сразу после установки нового модуля (чтобы не потерять данные).
Мастер восстановления
Первые шаги мастера различаются в зависимости от того, восстановление какой резервной копии было выбрано:
-
Для локальной копии отобразится окно с именем архива
. При нажатии кнопки Далее сразу начнется распаковка архива
;
Примечание: если для локального архива было включено шифрование Для шифрования бэкапа в настройках на закладке Параметры должна быть включена опция Шифровать данные резервной копии. Если шифрование включено, то перед началом создания резервной копии появится окно для ввода пароля.
Подробнее. и установлен пароль при создании копии, то до начала распаковки понадобится ввести этот пароль.
- Для облачной копии 1С-Битрикс откроется окно с тремя вариантами выбора:
- Развернуть резервную копию из облака 1С-Битрикс . Потребуется ввести ваш лицензионный ключ, выбрать нужный облачный архив и ввести пароль от архива (обязательно указывается при создании);
- Скачать резервную копию с другого сайта. Вы можете указать ссылку
на резервную копию с любого другого ресурса. Например, это может быть ссылка на локальный бекап с сайта на 1С-Битрикс , полученная через меню в списке резервных копий
; - Загрузить с локального диска. Резервная копия выбирается с локального диска ПК пользователя (как обычный выбор файла).
Важно: Загрузить нужно все части многотомного Количество частей зависит от настройки Максимальный размер несжатых данных в одной части архива (МБ) в форме настроек резервного копирования.
Подробнее. архива резервной копии.
Если вы получили ошибку 413 Request Entity Too Large , то нужно загружать порциями по несколько файлов. Например, 9-10 файлов. Если не загрузятся, то уменьшить объём партии. Определив оптимальный объём партии файлов, продолжать загрузку до тех пор, пока не будет загружен весь архив.
Независимо от того, какой вариант выбран, далее выполнится шаг распаковки архива.
По завершению распаковки архива выполнится переход к следующим шагам мастера:
- Восстановление базы данных:
- Пропустить восстановление базы данных. Эта кнопка используется для пропуска текущего шага, когда требуется только восстановление потерянных файлов и папок, оставив базу данных без изменений;
- Восстановить. База данных будет восстановлена. Настройки подключения к MySQL по умолчанию берутся из файла До версии 20.900.0 данные брались из файла
/home/bitrix/www/bitrix/php_interface/dbconn.php . /home/bitrix/www/bitrix/.settings.php . - Опция Создать базу данных, если не существует нужна при переносе сайта (когда база данных ещё не создана). При этом в параметрах можно указать собственные параметры подключения к MySQL.
- После успешного восстановления базы данных в целях безопасности необходимо Удалить локальную резервную копию и служебные скрипты, нажав на одноименную кнопку:

- Восстановление завершено
.
Примечание: Об особенностях резервного копирования и восстановления при многосайтовости можно прочитать в уроке Создание резервной копии.
Восстановление конкретных файлов
Внимание: Описанный ниже способ подходит только для локальной резервной копии без шифрования (пароля). Зашифрованный архив Узнать зашифрованный архив легко по расширению .enc.gz. можно только восстановить полностью средствами системы или через скрипт restore.php.
Иногда возникает потребность восстановить только конкретные файлы, а не делать полное восстановление сайта. Это возможно сделать, если у вас есть локальный архив.
Локальная резервная копия сайта (без пароля) это архив вида backup.tar.gz, а значит его можно распаковать и получить таким образом файловую структуру сайта.
В операционных системах семейства Linux архив .tar.gz распаковывается с помощью программы tar:
tar -xzvf backup.tar.gz /* где -x - извлекает файлы из архива -z - фильтрует архив с помощью gzip -v - предоставляет список обрабатываемых файлов -f - обязательная опция, которая указывает имя файла архива */
Такой способ распакует весь архив и вы сможете взять любые файлы. Но распаковка всего архива это долго. Поэтому если вы знаете, какие файлы вам нужны из архива, сразу укажите их в команде:
tar -xzvf backup.tar.gz file1 dir2/file2
Обратите внимание, что при этом необходимо указывать путь к папке, в которой файл сохранен в архиве. Найти путь к файлу можно также с помощью tar (покажется содержание архива) и утилиты grep (фильтр содержимого) следующей командой:
tar -ztf backup.tar.gz | grep file2 /* где -t - выводит содержание архива */
Для распаковки в ОС Windows используйте программы-архиваторы Например, известные 7zip или Winrar. .
Важно: Таким образом можно вытащить только физические файлы из файловой структуры сайта. Информацию, размещенную в инфоблоках (например, новости или элементы товарного каталога) так просто вытащить из архива не получится, т.к. размещена она в базе данных.
Возможные затруднения
Бывает, что в процессе восстановления возникают ошибки, например, вида Archive is corrupted, wrong block: 0 . Причин этому может быть много: недостаточно места или памяти на хостинге, лимиты хостинга, битый архив и т.д. При возникновении такой ситуации, убедитесь что на хостинге / сервере достаточно места и памяти для работы с бекапом. Если не удаётся найти причину такого поведения — обратитесь в техническую поддержку.
Что делать, если сайт не отвечает и вы не можете попасть в админку после восстановления
Например, ваш сайт не отвечает или выдается сообщение

.
Такое может случиться, если во время работы мастера восстановления произошел сбой или вы самостоятельно пытались прервать его работу.
В этом случае в адресной строке браузера наберите http://ваш_сайт/restore.php . Если вы раньше не скачивали скрипт restore.php, то можете скачать свежую версию скрипта с сайта по ссылке .
После запуска скрипта запустится мастер восстановления.
Дальше действуйте, как описано в уроке Перенос продукта «1C-Битрикс» курса Установка и настройка .