Допустим у вас есть товар, который необходимо продемонстрировать людям и не просто продемонстрировать, а дать как раз потрогать. Трогать будут товарищи разные: заурядные, пытливые и не очень хорошие. Естественно можно всего лишь поместить демо-юзера в группы «Manager», и этим не дать ему доступ к всеобщей настройке и установке/удаления дополнений, тем не менее это не решит вопрос контента содержащегося в вашем товаре, который следопыты будут трогать с распростёртыми руками: редактировать, удалять, созидать свой. Само собой все эти действия исковеркают наружный вид продукта. Закрыть допуск к контенту — закрыть вход к продукту! Выход есть: ритмическое обновление БД через определенные промежутки времени.
И так ближе к делу: 1) Составим поддомен, например demo.domain.ru; 2) Сделаем установку Joomla на поддомен; 3) Настроим наше демо-дополнение, которые будем демонстрировать всему миру; 4) Создадим нового юзера и назначим его в группу «Manager»; 5) Для безопасности в глобальной конфигурации отрубим ftp-режим.
Теперь на выручку идет великий и огромный cron, который и будет исполнять всю грязную работку: каждый час уничтожать все таблицы БД на демонстрационном-сайте и делать новые из бэкапа, а также очищать каталог с демонстрационным-сайтом и дальше сызнова копировать оригинальные файлы, чтобы привести весь тот хаос на демо-сайте, оставленный после следопытов в состояние начала.
Предположим что наш демо-сайт физически находится в каталоге "/home/{user}/public_html/demo": 1) Создадим новый каталог "/home/{user}/demo.restorefrom". Не создавайте каталог «demo.restorefrom» в каталоге «public_html» потому, что этим вы откроете ему публичный доступ!
2) С помощью панели управления хостингом или SSH скопируем составляющее каталога "/home/{user}/public_html/demo" в "/home/{user}/demo.restorefrom/demo".
3) Через phpmyadmin сделаем полным дамп базы demo-сайта, назовём полученный файл «dump.sql» и положим в каталог "/home/{user}/demo.restorefrom".
4) Создадим shell скрипт restore.sh с такими внутренностями: 5) Для безвредности в глобальной конфигурации отключим ftp-режим.
Теперь на подмогу идет большой и огромный , который и будет делать всю грязную работенку: ежечасно стирать все таблицы БД на демо-сайте и конструировать новые из бэкапа,и вдобавок очищать каталог с демо-сайтом и после занова копировать оригинальные файлы, дабы привести весь тот хаос на демо-сайт, оставленный после следопытов в начальное состояние.
Предположим что наш демо-сайт физически расположен в каталоге "/home/{user}/public_html/demo":
1) Создадим новый каталог "/home/{user}/demo.restorefrom". Не стоит создавать каталог «demo.restorefrom» в каталоге «public_html» тем самым открывая ему публичный доступ!
2) С помощью панели управлениях хостингом или скопируем содержимое каталога "/home/{user}/public_html/demo" в "/home/{user}/demo.restorefrom/demo".
3) Через phpmyadmin сделаем полным дамп базы демо-сайта, назовём полученный файл «dump.sql» и положим в каталог "/home/{user}/demo.restorefrom".
4) Создадим shell скрипт restore.sh с вот таким содержимым: