Для чего нужна копия сайта?
Если у Вас есть интернет-магазин - всегда хочется сделать его лучше, удобнее. Это единственный путь завоевать сердце и кошелек покупателя. А если магазин построен на стандартном движке (например, Virtuemart) - то мы получаем стандартный функционал, такой же как у сотни других магазинов. И тогда владельцы магазинов обращаются к программистам с просьбой сделать различные функциональные фишки, которые бы выделили магазин из общего ряда. И эти доработки бывают достаточно сложными, требуют всестороннего тестирования - а где тестить? И вот тут мы подходим к теме нашей статьи - на копии сайта.
Постараюсь описать процесс по шагам.
Единственное условие - у Вас должна быть возможность создать поддомен на Вашем хостинге. Например - test.Ваш_сайт.ru
Как это сделать? На разных хостингах по разному - поэтому проще обратиться к хостеру.
Далее, считаем что наш сайт поднят на Joomla, причем не важно 1.5 или 2.5 - компонент, который мы будем использовать для создания копии есть и для той и для другой версии. Это отличный бесплатный компонент - Akeeba Backup. Скачиваем с https://www.akeebabackup.com/ компонент для своей Joomla и устанавливаем стандартным способом.
Компонент имеет множество настроек, в том числе и для организации резервного копирования сайта. Но для нашей задачи достаточно дефолтных настроек. После установки через меню в админке заходим в компонент и нажимаем Backup Now (кстати, на оффсайте есть и русский язык)
Далее оставляем все как есть и снова нажимаем Backup Now. По умолчанию - дефолтный профиль, который скопирует нам все файлы сайта и базу данных сайта
Ждем когда все скопируется - не переходим на другие вкладки браузера.
После успешного завершения копирования (у Вас на хостинге должно быть достаточно места для создания файла бэкапа - потом мы этот файл скачаем и удалим) переходим к управлению файлами бэкапов
Нажимаем на ссылку рядом с именем файла и скачиваем бэкап.
далее, мы должны закинуть этот файл на свой новый тестовый поддомен. А также скопировать туда инструмент для восстановления копии - Akeeba Kickstart . Из архива с Kickstart достаточно взять только 4 файла как на скрине
Все готово для восстановления. Заходим на поддомен по адресу test.Ваш_сайт.ru/kickstart.php и запускается процесс восстановления копии сайта
В принципе, уже все интуитивно понятно и по русски - но пройдемся по всем шагам. Так как мы закинули всего один файл бэкапа - он и выбран. Жмем Старт
Далее идет процесс распаковки файлов сайта
После этого запускаем инсталятор
Проверкa хостинга - если все ок - в правом верхнем углу нажимаем Next
Акиба предупреждает что мы востанавливаем бэкап на сайте с другим адресом - соглашаемся.
Добрались до настроек базы данных. Вы можете для полигона не создавать новую базу - акиба просто для полигона сделает таблицы с другим префиксом. Оставляем localhost, вводим название базы, пользоватнеля и пароль. Обязательно меняем префикс!
Наблюдаем процесс установки
и по окончании жмем Ок
Далее, можем ввести новое название сайта, почту админа и обязательно ставим галку Overraid tmp and log path
Процесс установки завершен - удаляем папку с инсталяционными файлами
Жмем ок и видим копию своего сайта на поддомене
осталось немного прибраться - удаляем файлы kickstarter и файл бэкапа из корневой директории поддомена
и ещё один важный момент.
Необходимо, чтобы поисковые системы не индексировали нашу копию - не создавали дубль основного сайта. Для этого на поддомене в файле robots.txt оставляем только
User-agent: *
Disallow: /
Если на вашем сайте есть Virtuemart 1.1.* - необходимо изменить домен в \administrator\components\com_virtuemart\virtuemart.cfg.php в строках
define( 'URL', 'http://вашсайт/' );
define( 'SECUREURL', 'http:// вашсайт /' );
Удачных экспериментов!