четверг, 24 сентября 2009 г.

Отличный скрипт прогноза погоды

Великолепный,простой в настройке скрипт прогноза погоды.
Требования: php
http://depositfiles.com/files/dsux6e9of

понедельник, 7 сентября 2009 г.

Создание демонстрационного-сайта на Joomla 1.5, с ежечасным обновлением

Допустим у вас есть товар, который необходимо продемонстрировать людям и не просто продемонстрировать, а дать как раз потрогать. Трогать будут товарищи разные: заурядные, пытливые и не очень хорошие. Естественно можно всего лишь поместить демо-юзера в группы «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-режим.



Теперь на подмогу идет большой и огромный 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 сделаем полным дамп базы демо-сайта, назовём полученный файл «dump.sql» и положим в каталог "/home/{user}/demo.restorefrom".



4) Создадим shell скрипт restore.sh с вот таким содержимым:

#!/bin/sh
mysql -u{mysql username} -p{mysql password} {database name} < dump.sql
rm -rf /home/{user}/public_html/demo
mkdir /home/{user}/public_html/demo
cp demo/* /home/{user}/public_html/demo


и загрузим его в "/home/{user}/demo.restorefrom"



5) Зайдем в панель управления хостингом и прибавим задачу в cron:

/bin/sh /home/{user}/demo.restorefrom/restore.sh


вдобавок установим время исполнения каждый час: (0 * * * *)



Вот и всё! Помните о том, что надо заменить пути на собственные, также в файле restore.sh установить своё название БД, имя пользователя и пароль!