Как перенести сайт (1с-битрикс) большого размера на локальный компьютер?

Рейтинг:

Информации о том, как перенести сайт, на CMS 1С-битрикс, на локальный компьютер в интернете достаточно много. И бОльшая часть придерживается рекомендаций компании разработчика: 

  • 1. Создать через административную панель резервную копию сайта.
  • 2. Скачать на локальный компьютер (сервер).
  • 3. Установить виртуальную машину VMBitrix.
  • 4. Запустить VMBitrix и следуя инструкции восстановить сайт с копии на хостинге.

В данной статье мы не будем рассматривать данный вариант, а рассмотрим «топорный» способ, который не требует установки BitrixVM и создания резервной копии через админ-панель 1с-битрикса. Этот вариант подойдет для тех, у кого уже установлен иной локальный сервер для работы с сайтами, например AMPPS, AppServ, OpenServer и т.д. Или для тех, у кого недостаточно места на хостинге под резервную копию, которую делает 1с битрикс. А может нет доступа в админку сайта, а есть доступ только к хостингу (хотя эту ситуацию можно решить с помощью сброса админского пароля), в общем причины на практике иногда появляются.

Итак, имеем сайт (1с-битрикс) на хостинге с файловым размером от 10-ти Гб и базой данных (БД) от 500 Мб (это обычный размер интернет-магазинов 1с-битрикс с кол-м товаров от 5-ти тысяч единиц). Сайт необходимо развернуть на локальном компьютере с ОС Windows 10 на примере OpenServer.

  • 1. Создаем папку для нашего сайта в директории …\OSPanel\domains\testsite.loc (где testsite.loc - ваша папка для файлов локального сайта).
  • 2. Скачиваем файловую версию сайта с хостинга (сайты размером более 1 Гб рекомендуется скачивать через ftp).
  • 3. Экспортируем (с помощью phpMyAdmin) и скачиваем базу данных с хостинга либо создаём dump и скачиваем его, если это позволяет хостинг.
  • 4. Создаем чистую базу данных на локальном сервере с помощью phpMyAdmin в той кодировке, в которой находится БД на хостинге.

  • 5. Скачиваем в директорию…\OSPanel\domains\testsite.loc скрипт для тестирования настроек локального сервера https://dev.1c-bitrix.ru/download/scripts/bitrix_server_test.php. Перезапускаем OpenServer, переходим на новый, появившийся сайт и запускаем скрипт.
  • 6. Смотрим на что ругается результат тестирования, обычно это настройки php (memory_limit и max_input_vars).

  • 7. Данные параметры можно настроить в конфигурации вашей версии PHP OpenServerа, в нашем случае это php 7.4.

  • 8. Далее необходимо импортировать базу данных в созданную на 4-м этапе. Т.к. у нас БД более 500 Мб, импортировать мы её будем через консоль. Открываем консоль в меню OpenServerа. Антивирусы могут блокировать работу в консоле. Если это произошло, то отключите блокирующее ПО, либо настройте исключения. В Dr.Web достаточно отключить привентивную защиту.
  • 9. После запуска консоли нам нужно перейти в директорию с необходимой версией MySQL. В нашем случае путь выглядит так:

modules\database\MySQL-5.6\bin

а команда, которую необходимо ввести, так:

cd modules\database\MySQL-5.6\bin

Чтобы запустить импорт базы данных большого объема пишем команду:

mysql -uroot -p testsitebd < c:\Openserver536\testbd_dump.sql

где «root» – это имя пользователя базы данных (обычно root), «-p» - запрос на пароль, в случае если он указан к этому пользователю в базу данных (попросит ввести пароль после запуска команды импорта, обычно либо его нет, либо «root»), «testsitedb» - это название базы данных, которую мы создали на 4-м этапе, а «c:\Openserver536\testbd_dump.sql» - это путь, где лежит выгруженная с хостинга база данных.

Если всё указано верно, то процесс завершится вновь активным полем для ввода команд (в нашем случае первый импорт прошел не удачно, т.к. не правильно указали имя базы данных «testsitedb», вместо «testsitebd», бывает :) ).
Процесс импорта базы данных зависит от объема загружаемой базы и производительности локальной машины. В нашем случае dump базы данных весом 1,5 Гб загружался 10 минут. После успешной загрузки БД, в phpMyAdmin можно увидеть загруженные таблицы.

  • 10. Меняем в служебных файлах данные доступа к базе данных:

bitrix/php_interface/dbconn.php;

bitrix/settings.php.

  • 11. Запускаем сайт и тестируем с помощью встроенного инструмента 1с-битрикса «Проверка системы».


Исправляем при необходимости ошибки. Если на вашем сайте на хостинге не было ошибок перед переносом, то обычно добавляются только ошибки со временем сервера и агентами cron.


Всё, на этом перенос сайта с хостинга на локальный компьютер, на примере OpenServerа завершен.

Меню