Как сделать копию сайта joomla
Joomla3-x.ru
Вступление
Не всегда, и не все работы можно выполнить своими силами. Однако вам важно, что вы самостоятельно можете перестраховаться и делать резервные копии своих сайтов, чтобы их не потерять.
Сообщаю, в Интернет есть специальные порталы называемые, агрегаторы сервис центров. На них в одном месте, у удобной навигацией собраны проверенные сайты и организации, оказывающие разнообразные услуги населению и организациям.
Например, сломался у вас компьютер. Открываете сайт агрегатора https://spb.service-scanner.ru/, и смотрите раздел «ремонт компьютеров». Там для Вас собрали 230+ сервисных центров по ремонту компьютерной техники, город Санкт-Петербург. Выбираете подходящий и сразу оставьте заявку.
От автора
Резервное копирование Joomla 3 можно делать несколькими способами, включая использование сторонних расширений. В этой статье я расскажу, как сделать самостоятельное резервное копирование сайта, без использования расширений. Это универсальный метод резервного копирования.
Joomla 3, как и любой другой Интернет ресурс, состоит из двух частей. Первая часть, это папки и файлы CMS Joomla, вторая часть это база данных вашего сайта. Полная резервная копия сайта, соответственно, включает копии двух этих частей.
Копия сайта
Чтобы сделать копию сайта, а более точно, копию CMS Joomla 3, нужно открыть каталог сайта по FTP и «тупо» скопировать все папки и файлы корневого каталога сайта себе на компьютер в отдельную папку. Все копия сайта готова. Переходим к копии базы данных сайта.
Копия базы данных
После входа в phpMyAdmin кликните по названию базы данных. Откроется структура базы данных – список таблиц.
Копия базы данных делается очень просто. Ничего не выделяя, нажимаете кнопку «Экспорт». На следующей странице вы можете выбрать два варианта копирования. Быстрое копирование и Сжатое копирование.
Примечание: База данных копируется текстовым файлом в формате sgl. Либо, в сжатых вариантах, zip, gzip. Для многих серверов предпочтительнее делать копию базы данных в сжатом формате gzip.
Выбираете сжатие gzip и нажимаете Ok. После сохранения файла на компьютере, копия базы данных готова.
Примечание : Если вы делаете копию всей базы данных, в соответствующем окне должны быть выделены все таблицы базы. По умолчанию они и выделены, поэтому менять ничего не нужно, просто проверьте.
Восстановление сайта
Резервное копирование Joomla 3 позволяет восстанавливать сайт при любых проблемах. Восстанавливается сайт зеркально копированию. А именно, очищаете корневую папку сайта и закачиваете резервную копию. В phpMyAdmin удаляете все таблицы базы данных и, используя кнопку «Импорт» заливаете копию базы данных. Все. Эти два простых шага помогут восстановить сайт при любых «авариях» на сайте.
Простой способ автоматического создания бекапа joomla сайтов с помощью Akeeba backup + Crontab
Всем привет.
Хочу описать процесс полностью автоматического создания резервных копий сайтов на CMS Joomla с помощью компонента Akeeba backup, причем его бесплатной версии.
Знаю, что джумлу на хабре не особо жалуют, но думаю все же найдутся хабровчане, которые создают сайты с её помощью.
В качестве примера буду использовать Joomla 2.5.16
Первым делом нам нужно установить компонент Akeeba Backup. Скачать его можно отсюда: www.akeebabackup.com/downloads/akeeba-backup.html
Мой сайт находится на хостинге timeweb, но я думаю, что большинство хостингов имеет в своей панели управления способ создавать задания с помощью планировщика crontab. Если ваш сайт находится на собственном сервере, тут еще проще.
Теперь необходимо написать небольшой shell скрипт, который будет запускаться планировщиком Crontab.
Выглядит он так:
Данный скрипт осуществляет бекап нашего сайта.
После чего необходимо указать планировщику Crontab периодичность бекапа. Для хостинга timeweb это делается так: Панель Crontab. Далее выбрать Добавить новую задачу
Пишем название нашего задания, тип файла: SH сценарий, указываем путь до файла на нашем сервере (естественно файл со скриптом должен быть заблаговременно залит на сервер), ну и выбираем нужную нам периодичность бекапа.
Если у вас есть полный доступ к серверу, на котором располагается сайт, то нужно занести строчку в конфиг crontab, по умолчанию расположенный в /etc/ с именем crontab
Всё, теперь наши бекапы будут делаться в автоматическом режиме по расписанию и складываться в каталог, прописанный в настройках компонента Akeeba Backup. По умолчанию: administrator/components/com_akeeba/backup/
В дальнейшем планирую расширить bash скрипт, чтобы он удалял устаревшие бекапы и также переносил эти файлы на дропбокс. Если есть какие-то мысли, как это сделать, прошу поделиться в комментариях.
Для того, чтобы восстановить сайт или перенести его на другой сервер, необходимо скачать набор файлов под названием Akeeba Kickstart: www.akeebabackup.com/downloads/akeeba-kickstart.html
Необходимо поместить эти файлы на сервер и туда же скинуть файл с бекапом, который имеет расширение jpa.
Далее просто пройти по адресу: http:// /kickstart.php и следовать инструкциям.
Если вы восстанавливаете сайт на том же сервере, где он и был, то часть настроек подтянется автоматически, иначе нужно будет указать новые настройки для корректного формирования конфига: путь к БД, имя БД, имя пользователя БД и тд.
После выполнения всех инструкций, система восстановит сайт. И никаких танцев с бубном с перезаливкой руками всех файлов(особенно противно это делать по FTP), а также ручной правкой конфигурационного файла configuration.php в корне сайта.
UPD 17.12.2013: Расширил скрипт, теперь он удаляет устаревшие бекапы.
UPD 16.05.2014: Хотел заморочиться с отправкой бекапа на дропбокс, но выходит больно кропотливо, гораздо проще использовать облачное хранилище с поддержкой WebDAV, я использовал Яндекс диск. Вот так выглядит скрипт:
Ну и создаем по аналогии задание в cron под запуск скрипта
Ой, у вас баннер убежал!
Читают сейчас
Редакторский дайджест
Присылаем лучшие статьи раз в месяц
Скоро на этот адрес придет письмо. Подтвердите подписку, если всё в силе.
Похожие публикации
Резервное копирование конфигурации ресурсов в Kubernetes
Вебинар DataLine «Как получить рабочий бэкап: выбираем инструменты резервного копирования» 25 февраля
Путеводитель по резервному копированию баз данных
Средняя зарплата в IT
AdBlock похитил этот баннер, но баннеры не зубы — отрастут
Минуточку внимания
Комментарии 13
бывало много случаев, когда у людей долгое время работал автоматический бэкап.
Вот он работает месяц два, год и все довольны, но резервными копиями никогда не пользовались — не было потребности. Испытали один раз в самом начеле и успокоились.
А когда потребность пришла (на сервере сломался винт), то оказалось, что многочисленные файлы бэкапа создаваемые годами на самом деле полное фуфло — из них оказалось нельзя восстановить.
Например, где-то в середине эксплуатации закончилось место под бэкапы и они получались нулевой длины.
Или провайдер обновил версию какой-то библиотеки на сервере и она стала работать немного не так, а ее вызывала функция создания бэкапа… Провайдер сменил версию PHP или SQL а модуль архивации с ними не был оттестирован… На сайте может вдруг оказался вирус, который поразил и систему архивирования… Да мало ли что…
Поэтому я говорю, что хорошо было бы иметь в запасе развернутую копию реального сервера.
Ну или по крайней мере раз в месяц пытаться извлечь из бэкапа — дай бог чтоб извлеклось…
Так что мы лучше как-нибудь по старинке: rsync + rdiff-backup
Сегодня настроил Akeeba backup.
Есть несколько замечаний, верней дополнений к статье:
1) Если в настройках установить ZIP формат архива ( у меня joomla 3.2 и последняя версия akeeba backup), то архив разворачивается так:
а) создаем на нужном сервере http папку, например /srv/www/htdocs, в которую копируем zip архив с бакапом
б) распаковываем в папке архив так — unzip backup.zip
в) создаем пустую базу данных, пользователя с паролем и правами доступа к базе на нашем новом сервере
г) просто входим на сайт www.site.com и видим, что из распакованной папки installation автоматически запустился установщик, а это значит что не нужно использовать kickstart, скачивая его для восстановления. Архив уже содержит все в себе. Не забываем настроить на сервере индекс для обработки файла index.php по умолчанию. К примеру, для nginx — добавим в конфиг index index.php, но думаю, что это не нужно разжевывать.
в) далее, не забываем сделать chmod +x для /backups/get_backup.sh и ручками запускаем его, для тестирования. В случае ругани, не забываем что нужно добавить необходимые библиотеки для php и прописать папку /backups в PEAR для php.ini
Собственно все. Как это работает:
1) Сервер 2 коннектится к серверу 1 и создает на сервере 1 согласно профилю 1 ( это описано в статье выше ) бакап.
2) Далее, сервер 2 скачивает в папку /backups сервера 2 архив с сервера 1, который только что был создан
Ура. Мы имеем в папке /backups архивы за каждый день. Как удалять старые, не буду описывать, мне это не нужно. Пусть себе живут. Скрипт на шеле, думаю легко написать с помощью гугла.
«Знаю, что джумлу на хабре не особо жалуют, но думаю все же найдутся хабровчане, которые создают сайты с её помощью.»
И при этом по статистике Joomla! в лидерах по созданным сайтам на этой CMS.
Это с какого перепугу! Хорош вешать ярлыки! Я просто промолчу про 1эС.
Версии 3.3 и 2.5 просто подарок.
Спасибо за солюшен.
Здравствуйте! Помогите мне разобраться со скриптом копирования на яндекс диск. Скрипт Бэкапа сделал таким
и сохранил в файле skript.php, после чего указал на хостинге в Cron
погуглить методы, отвечающие за работу php с файловой системой. Перейти с помощью данных методов в каталог, в котором храняться бекапы.
Сделать цикл перебора всех файлов-бекапов, и для каждого применять curl
Получится что-то типа этого:
Подробнее можно почитать здесь
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.
Бэкап сайта на CMS Joomla
Бэкап необходим на случай вирусной атаки, либо халатного администрирования сайта, возможно стоит делать резервную копию сайта перед установкой на платформу непроверенных расширений.
Возможно сделать бэкап при помощи PHPMyAdmin и скачать необходимые файлы и директории на локальный компьютер, но мы рассмотрим более простой способ, прибегнув к помощи модуля Akeeba Backup.
Установка достаточно примитивна и не должна вызвать трудности. Akeeba backup доступен для загрузки на официальном сайте, так же там вы найдёте пакет локализации, установите его, если необходимо.
После установки авторизуйтесь в административной панели вашего сайта > Расширения > Менеджер расширений > выберите архив модуля из директории на жёстком диске.
После установки компонент Akeeba Backup вы найдёте во вкладке «Компоненты».
Теперь попробуем настроить наш модуль.
Выбрав модуль в разделе «Компоненты», мы увидим экран обновления конфигурации.
Напротив каждого из трёх пунктов есть чекбокс, но в бесплатной версии скрипта возможности «Включить откат системы к точке восстановления» и «Включить уведомления по электронной почте об обновлении компонента» будут недоступны.
После нажатия кнопки «применить» мастер настройки делает протестирует сервер, для установки оптимальных условий формирования бэкапа.
В случае если тест пройдёт без ошибок, вы увидите страницу успешного прохождения теста.
Отсюда уже можно перейти к созданию бэкапа, но рекомендуется провести ряд дополнительных настроек.
Выберем другой «способ архивирования», в ниспадающем меню выберем формат zip. Затем сохраните настройки.
Если всё пройдёт успешно, вы увидите страницу с «поздравлением»
Восстановление резервной копии сайта.
Далее нам следует научиться восстанавливать сайт из бэкапа. По умолчанию наш модуль сохраняет бэкап в директории joomla.ru/administrator/components/com_akeeba/backup. Для того чтобы восстановить сайт копируем архив с резервной копией и перемещаем иго в корень директории сайта. Далее очищаем каталог от всех файлов, кроме модульного архива и распаковываем его в эту папку.
Переходим на наш сайт в браузере и видим страницу инсталляции резервной копии. Пройдёт проверка конфигурации сервера, в блоке Required Settings все параметры должны быть зеленого цвета в противном случае корректная работа сайта не гарантируется, в блоке Optional Settings допускаются значения красного цвета, но они так же не желательны обсудите вопрос с хостинг поддержкой, спросите совета о корректной работе.
Далее жмём на «next».
Здесь нам предложат настроить базы данных. Если бэкап делается на том же хостинге, что был при создании резервной копии, то можно пропустить этот шаг, если сайт переносится на другой хост, следует создать новую базу данных.
На этой странице больше нет необходимости что-то менять. Жмите «next».
Следующая страница покажет нам панель основной конфигурации сайта. Так же оставим без изменений, все настройки наследуются от рабочей версии.
Удаляем каталог установки и добро пожаловать на сайт! Бэкап сделан.
Akeeba Backup резервное копирование, восстановление и перенос сайта Joomla
Резервное копирование и восстановление сайта на Joomla делается очень легко. В этой статье будет рассказано про расширение Akeeba Backup, которое выполняет резервное копирование сайта Joomla. Во второй части статьи расскажу, как восстановить сайт из резервной копии.
Не смотря на то, что хостинг провайдер может делать резервную копию сайта, могут произойти ситуации, когда копия сайта может быть Вам недоступна или содержать не все нужные данные. Поэтому обязательно позаботьтесь о создании резервной копии сайта сами. Для этих целей можно использовать очень удобный инструмент Akeeba Backup. Бесплатной версии этого расширения достаточно, для выполнения резервного копирования и восстановления сайта Joomla.
Прочитав эту статью Вы научитесь делать резервную копию и восстановление своего сайта на Joomla.
Установка Akeeba Backup.
Чтобы установить расширение «Akeeba Backup», для создания резервной копии сайта Joomla, воспользуемся способом «Установить из JED» или «Upload Package File». Первый способ предпочтительней, так как он самый простой. Если версия Joomla меньше 3.2, то эта функциональность не доступна и придется воспользоваться вторым способом. В этой статье будет описано два способа установки, а Вы сможете воспользоваться любым на выбор.
Установить из JED — позволяет установить расширение через интернет. Выбрать расширение для установки можно из предоставляемого каталога.
Для установки расширения переходим в меню Расширения—>Менеджер расширений—>Установить. На открывшейся странице будет каталог расширений. Найдите в этом каталоге указанное на картинке расширение «Akeeba Backup» и двойным кликом мышки откройте страницу установки.
Откроется страница описания расширения. На этой странице будет кнопка установки. Нажмите эту кнопку, для запуска процедуры загрузки и установки.
Перед началом установки требуется подтвердить операцию. На этом этапе еще можно отказаться от установки. Для подтверждения установки жмем кнопку Install (Установка)
После завершения установки на странице появится сообщение. Сообщение будет иметь вид как на рисунке или аналогичное на другом установленном по умолчанию языке сайта.
Upload Package File — устанавливаем, заранее скаченное расширение.
Для скачивания расширения «Akeeba Backup» переходим на сайт разработчика akeebabackup.com. И находим на главной странице ссылку на расширение «Akeeba Backup» или на этой же странице, нужно в верхнем меню выбрать «Download».
Перейдя на страницу описания расширения, загрузите его на свой компьютер.
После загрузки расширения. Вернитесь в панель администратора Joomla и выберите в верхнем меню Расширения—>Менеджер расширений—>Установить. Перейдите на закладку «Upload Package File». Далее выберите загруженный на компьютер файл. И запустите его загрузку и установку.
Резервное копирование Joomla.
После установки расширения надо произвести его запуск, для первичной настройки. Для этого выберите в меню Компоненты—>Akeeba Backup.
После перехода по указанному пункту меню, при первом запуске откроется мастер настройки. Нажмите на кнопку запуска мастера настройки.
После нажатия на кнопку конфигурирования, запустится автоматическая настройка. Следует дождаться ее завершения. После завершения настройки будет предложено сделать резервное копирование данных. Соглашаемся с предложение и делаем копию сайта Joomla.
Переходим на страницу создания резервной копии.
После перехода на страницу резервного копирования, подтверждаем резервное копирование.
После запуска резервного копирования. Дожидаемся его завершения. Как только резервное копирование закончится будет выдано сообщение. Далее можно перейти в панель управления «Akeeba Backup».
Если на предыдущем шаге нажать «Manage Backups» или аналогичную функция в в панели управления резервными копиями «Manage Backups», то откроется страница со списком сделанных резервных копий.
Восстановление сайта из резервной копии.
Для восстановления сайта из сделанной резервной копии нужно загрузить с сайта разработчика дополнительный пакет файлов «Akeeba Kikstart».
Выбрав указанный архив файлов, перейдите на страницу загрузки.
После загрузки, из архива потребуется извлечь четыре файла:
Теперь копируем извлеченные файлы в корень каталога сайта. Туда же копируем файл резервной копии сайта, сделанный «Akeeba Backup». Все необходимые, для восстановления сайта, файлы подготовлены а размещены в нужном месте.
Теперь создадим пустую базу данных MySql. Если на сервере MySQL уже есть созданная база, то тогда этот шаг можно пропустить.
Открываем PhpMyAdmin на локальном сервере. Напоминаю, что для примера я буду использовать OpenServer, если вы будете использовать другой пакет программ для web сервера, то действия будут точно такими же, только будут отличаться элементы интерфейса управления службами.
После запуска PhpMyAdmin открывается главная страница приложения. Переходим в раздел «Базы данных» и создаем пустую базу данных. Для этого, в поле «Создать базу данных», вводите свое наименование базы и жмете на кнопку «Создать». После создания базы она появляется в списке баз. На этом подготовительные работы закончились.
Для запуска восстановления сайта, наберите в строке адреса браузера адрес сайта и через разделитель имя запускаемого файла «kikstart.php».
После запуска файла «kikstart.php» появится информационный текст. Внимательно прочитайте весь текст. Данные рекомендации пригодятся вам, если после восстановления, сайт будет работать не корректно.
Нажав кнопку «ESC», откроется первая страница настройки. В большинстве случаев на этой странице не надо делать дополнительных настроек. Если вы восcтанавливаете свою базу по своему сценарию, то сделайте соответствующие настройки. После того, как все настройки сделаны жмете на кнопку Начать.
Запускается процесс извлечения файлов из архива.
После извлечения файлов из архива, появляется окно запуска инсталлятора. Жмем кнопку Запустить инсталлятор и переходим к следующему шагу.
После запуска инсталлятора, будет отображена информационная страница. На этой странице можно посмотреть текущие настройки web сервера. Можно сравнить версию PHP которая была при создании резервной копии сайта и та версия PHP которая используется текущим WEB сервером. Посмотрев информационную страницу переходите на страницу «Восстановления главной базы данных веб сайта». Жмем кнопку «Следующая».
На странице «Восстановления главной базы данных веб сайта» нужно ввести параметры подключение к базе данных MySQL, имя пользователя и пароль. Остальные настройки можно оставить без изменения. На этом настройки, необходимые для восстановления базы данных, сделаны. Запускаем процесс восстановления базы данных, жмем кнопку Следующая.
Ждем завершения процесса восстановления базы данных…
После того, как база будет восстановлена, на экране появится информационное сообщение об окончании восстановляния базы данных. Жмем на кнопку Следующий шаг.
Заключительный этап восстановления сайта. Проверяем и при необходимости редактируем поля в разделе «Параметры сайта». В разделе «Тонкая подстройка директорий» проверяете пути к системным директориям временных файлов и журнала. В разделе «Настройки супер администратора», выбираем администратора и вводим пароль. В основном все поля заполняются, по умолчанию, значениями из резервной копии и их не требуется изменять. Жмем на кнопку Следующая.
Открывается последняя страница с информацией о завершении восстановления web сайта. Переходим на страницу восстановления сайта и жмем на кнопку Очистить.
На этом восстановление сайта закончено.
Переходим на главную страницу сайта и проверяем его работоспособность.
Надеюсь, что статья была Вам полезна и Вы узнали что-то новенькое.