Резервное копирование — жизненно важное условие содержания сайта.
Наличие резервной копии избавит от многих неприятностей, подстерегающих Вас, как web-мастера, практически, на каждом шагу и сбережет ваши нервы и время на восстановление сайта.
Чуть-чуть лирики, или почему я обратился к этой теме?
Скачивал из разных источников новые шаблоны Joomla и примерял их на свой сайт, не проверяя архивы на вирусы, короче, вообще не глядя. Итогом такого безрассудства стала поимка вирусов, действие которых выразилось в появлении посторонних навязчивых баннеров сверху, снизу и даже сбоку страницы. Устранил этот вирус с помощью Касперского (KIS, лицензионный). Далее, на компьютере обнаружил установку посторонних программ, типа, игровых браузеров и ещё какой-то лабуды. Снова лечение с перезагрузкой. Даже браузер Хром очистил сам себя от двух вредоносных программ.
Казалось бы, нужно остановиться, но я продолжил искать подходящий мне шаблон. В итоге, при установке очередного шаблона получил полный коллапс в CMS Joomla. При попытке открытия админ-панели и сайта, в браузере появлялась неприятная строка с оповещением об критической или фатальной ошибке. Честно говоря, я не думал, что в последней (на тот момент) 3.4.8 версии Joomla такое возможно.
Все мои попытки восстановления сайта путем замены файлов в папках из скачанной «девственной» Джумлы не дали результатов. Но, к счастью, накануне я случайно сделал резервную копию сайта и, как оказалось, весьма кстати. Она меня так здорово выручила! Я восстановил свой проект на Joomla за несколько минут и остался доволен тем, что у меня получилось. Поэтому и возникло желание написать эту статью, в которой хочется поделиться с вами некоторым приобретенным опытом.
Создание резервной копии
Для резервного копирования в Joomla одним из лучших вариантов является применение расширения Akeeba Backup — безоговорочного лидера в сегменте этого направления.Akeeba создает архив всех файлов сайта и копию базы данных. С его помощью можно создавать как резервные копии сайта, так и восстанавливать сайт из резервной копии на своем или другом домене или сервере, подходящем для Джумлы.
Установка компонента Akeeba
Установка расширения Akeeba и его обновления происходят обычным образом по стандартной отработанной схеме. На этом, думаю, не стоит останавливаться. Скачать расширение можно с сайта https://www.akeebabackup.com/
Настройки резервного копирования
Akeeba позволяет производить настройки копирования данных, предоставляя пользователю возможность выбора каталогов и файлов, подлежащих копированию, а также включение или исключение из бэкапа БД (базы данных). Войти в настройки Akeeba можно из верхнего меню админ-панели, пройдя по пути: Компоненты → Akeeba Backup → Настройка.
Настроек много, но нет необходимости регулировать их все. Целесообразно остановиться на нескольких, даже на двух основных:
- Папка для сохранения резервных копий. Можно оставить по умолчанию или указать корневую папку на сервере. Почему корневую? Потому, что так удобнее восстанавливать сайт на своем же домене — архив будет уже находиться в нужном месте.
- Двигатель архивирования. Есть два формата — JPA и ZIP. Если рекомендуют JPA, выбирайте лучше его. По крайней мере из этого формата я восстановил свой сайт успешно, быстро и без всяких заморочек.
Остальные настройки можно оставить без изменения.
Можно воспользоваться услугами Мастера настройки (Настройки → Мастер настройки). Он автоматически определит наиболее подходящие параметры для копирования именно вашего сайта.
Процесс создания резервной копии
В правом верхнем углу панели управления Akeeba оповещает Вас, что система готова к резервному копированию. Значит можно начинать копирование. Жмите кнопку Начать резервное копирование и следуйте указаниям системы, главным образом, не закрывая окно панели управления до полного окончания процесса. Сам процесс занимает рекордно малое количество времени, так как применяется технология AJAX.
По окончанию процедуры будет создана резервная копия сайта, детали которой Вы сможете просмотреть, нажав кнопку Управление резервными копиями.
Как я уже говорил, по умолчанию копия сайта находится на сервере по адресу:
/логин на хостинге/domains/ваш домен/administrator/components/com_akeeba/backup
Чтобы удалить устаревшую резервную копию, на странице управления копиями нужно выделить копию, поставив маркер в чекбоксе и нажать кнопку Удалить вверху панели управления.
В менеджере резервных копий, архив сайта (почти 670 мб) можно скачать на свой компьютер:
Восстановление сайта из резервной копии
Прежде всего, нужно отметить, что резервная копия, созданная в Akeeba, позволяет восстановить сайт на любой локальный или виртуальный сервер, так как она содержит в себе полный набор данных о сайте и копии базы данных.Есть несколько способов восстановления, но я приведу всего один, который испробовал сам. Это использование скрипта распаковки архива — Akeeba Kickstart. Этот скрипт позволяет распаковать архив сайта непосредственно на сервере, что очень удобно. Распишу процесс пошагово:
1. Скачайте архив со скриптом с сайта
https://www.akeebabackup.com/download/official/akeeba-kickstart.html, распакуйте в папку на компьютере.
2. Закачайте из содержимого папки kickstart-core-4.1.4 только файл скрипта и русификатор в корневую папку сайта. Туда же поместите архив резервной копии — JPA.
В итоге, в корневой папке должны находиться только три файла (все остальное, если было в корне — удалить!):
- архив JPA
- kickstart.php
- ru-RU.kickstart.ini
3. Если Вы переносите сайт на другой домен или хостинг, создайте заблаговременно базу данных и запомните или запишите параметры подключения к ней. (При восстановлении сайта на своем домене этот шаг выполнять не нужно).
4. Запустите скрипт, набрав в адресной строке используемого вами браузера:
http://domen.ru/kickstart.php
где domen.ru — это адрес вашего сайта.
Нажмите Enter. Начнется процесс восстановления. На этом этапе нужно просто выполнять все пункты восстановления, предлагаемые скриптом. Если происходит перенос на новый хостинг, нужно будет вводить данные:
- Имя хоста, обычно это localhost
- Имя базы данных
- Имя пользователя базы данных
- Пароль пользователя базы данных
Восстановление происходит на удивление быстро и качественно. Я лично даже не ожидал, что так удачно получится.
Если мастер не находит архив с резервной копией сайта, но у вас сделано все правильно, нужно изменить права доступа на этот архив. Установите 755. Если возникают ошибки при разархивации, обратитесь в техподдержку вашего хостинга.
Желаю Вам стабильной работы сайта, делайте постоянно резервные копии.