Выпущен очередной релиз безопасности — Joomla 1.5.15 [Wojmamni ama mamni]. В данной версии исправлено 60 ошибок, обнаруженных при тестировании Joomla 1.5.x (среди них две, связанные с безопасностью, но некритические). Разработчики настоятельно рекомендуют обновиться до данной версии.
02.09.2009| pedrosoft | | Статьи и обзоры / Статьи
Предположим у вас есть продукт, который нужно показать другим да не просто показать, а дать именно пощупать. Щупать будут люди разные: нормальные, любопытные и, потенциально, плохие. Конечно можно просто поместить demo-пользователя в группы «Manager», тем самым запретив ему доступ к глобальной конфигурации и установке/удаления расширений, однако это не решит проблему контента содержащегося в вашем продукте, который следопыты будут щупать с распростёртыми руками: редактировать, удалять, создавать свой. Конечно все эти действия испортят внешний вид продукта. Закрыть доступ к контенту — закрыть доступ к продукту! Выход есть: периодическое обновление БД через определённые промежутки времени.
И так приступим:
Создадим субдомен, например demo.domain.ru;
Установим Joomla на субдомен;
Установим и настроим наши demo-расширения, которые будим показывать всему миру;
Создадим нового пользователя и присвоим ему группу «Manager»;
Для безопасности в глобальный конфигурации отключим ftp-режим.
Теперь на помощь приходить великий и могучий , который и будет выполнять всю грязную работёнку: каждый час удалять все таблицы БД на demo-сайте и создавать новые из бэкапа, а также чистить каталог с demo-сайтом и потом занова копировать оригинальные файлы, чтобы привести весь тот хаос на demo-сайте, оставленный после следопытов в начальное состояние.
Предположим что наш demo-сайт физически расположен в каталоге "/home/{user}/public_html/demo":
Создадим новый каталог "/home/{user}/demo.restorefrom". Не стоит создавать каталог «demo.restorefrom» в каталоге «public_html» тем самым открывая ему публичный доступ!
С помощью панели управлениях хостингом или скопируем содержимое каталога "/home/{user}/public_html/demo" в "/home/{user}/demo.restorefrom/demo".
Через phpmyadmin сделаем полным дамп базы demo-сайта, назовём полученный файл «dump.sql» и положим в каталог "/home/{user}/demo.restorefrom".
Создадим shell скрипт restore.sh со следующим содержимым: