среда, 19 ноября 2008 г.

A.L.I.C.E.

Human: do you like to swim?
ALICE: Yes but I have no body yet!
Human: how do you like to swim if you have no body?
ALICE: Hmm, unknown person, I'm not sure if I'd like to swim if me have no body that much. What is it like?
Human: this is motiom.
ALICE: You don't say.
Human: Motion in the water
ALICE: Are we still talking about My favorite movie ? 

Эта девочка живет здесь

четверг, 6 ноября 2008 г.

О том, как установить web-приложение для bitnami стека

Ну-с, начнем...
Наверно, многие знают о существовании такого гм.. сервиса: www.bitnami.org. Что он позволяет? А позволяет он за пару минут установить на своем компьютере набор программ  apache+mysql+php. У Bitnami этот набор называется стек (stack), так и будем его именовать дальше. При этом установка стека производится за несколько кликов с использованием программы-инсталлятора с нормальным user-friendly интерфейсом, избавляя тем самым пользователя от нудного копания в файлах настройки. Установка может выполняться как на машинах с OS Windows, так и с MacOS и с Linux. Дополнительно к упомянутому набору в обязательном порядке ставится приложение phpMyAdmin, на тот случай, если потребуется что-то поковырять в MySQL ручками (и ведь потребуется!).
Однако, таких WAMP, LAMP и... MAMP(?) дистрибутивов при желании на просторах сети можно найти немало. Но у дистибутивов от bitnami есть еще одно огромное преимущество. Поверх самого WAMP или LAMP стека можно установить OpenSource приложения (скрипты): MediaWiki, Drupal, WordPress, phpBB и т.д. Есть только одна проблема, дистрибутивы вышеупомянутых приложений для стеков bitnami подготавливаются закрытым сообществом, спонсируемым компанией BitRock - производителем программы-инсталлятора. Поэтому, если вы хотите установить в своем стеке скрипт, не представленный на bitnami.org, вам не остается ничего другого, как написать жалостивое письмо в info@bitnami.com и попросить, чтобы интересное вам приложение включили в список для голосования. По результатам данного голосования и будут подготовлены дистрибутивы наиболее востребованных приложений.

Ну что ж... спасение утопающих дело рук самих утопающих.
Итак, что делать, если требуется поставить на стек приложение, дистрибутив которого еще не был создан bitnami.org?

Для примера рассмотрим установку форума fluxBB на стек WAMP (т.е. Windows версия стека). Также предполагается, что в данном стеке уже установлены какие-либо другие приложения из дистрибутивов bitnami, например, WordPress. Также сразу хочу оговориться, что:
  • данная инструкция опробовалась только на php-приложениях (не Java, не Ruby),
  • если ваша БД дорога вам, лучше сделать лишний бэкап,
  • все действия вы делаете на свой страх и риск (точнее, чья система, того и риск).
Итак:
  1. Сначала загружаем приложение (249Kb) со страницы комьюнити форума. На момент написания данной заметки последняя версия форума - 1.2.20. Windows-версия приложения распространяется как zip-архив. Распаковываем его. В нем есть две подпапки: extras и upload.
  2. WAMPStack установлен в папку: D:\Program Files\BitNami WAMPStack, здесь и далее D:\Program Files - путь к стеку (зависит от того, куда вы установили стек, например, C:\MyProg, C:\Program Files и т.п.). Все дополнительно устанавливаемые приложения помещаются в каталог D:\Program Files\BitNami WAMPStack\apps. Создаем каталоги: 
    D:\Program Files\BitNami WAMPStack\apps\fluxBB 
    D:\Program Files\BitNami WAMPStack\apps\fluxBB\conf
    D:\Program Files\BitNami WAMPStack\apps\fluxBB\htdocs
  3. Копируем содержимое папки upload распакованного архива fluxBB в каталог D:\Program Files\BitNami WAMPStack\fluxBB\htdocs. Это, собственно, и есть выполнемые скрипты программы.
  4. Теперь нужно настроить файл конфигурации. Чтобы не создавать его с нуля, возьмем существующий файл от другого приложения и подправим там все необходимое. "Другим приложением" в нашем случае будет WordPress. Вот содержимое его конфигурационного файла:
    Alias /wordpress/ "D:/Program Files/BitNami WAMPStack/apps/wordpress/htdocs/"
    Alias /wordpress "D:/Program Files/BitNami WAMPStack/apps/wordpress/htdocs"

    <directory "D:/Program Files/BitNami WAMPStack/apps/wordpress/htdocs">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </directory>
    Это содержимое данного файла. Теперь мы его подправим, чтобы он указывал не на WordPress, а на fluxBB. Найти 10 отличий.
    Alias /fluxBB/ "D:/Program Files/BitNami WAMPStack/apps/fluxBB/htdocs/"
    Alias /fluxBB "D:/Program Files/BitNami WAMPStack/apps/fluxBB/htdocs"

    <directory "D:/Program Files/BitNami WAMPStack/apps/fluxbb/htdocs">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </directory>
    Некоторые пояснения: Alias указывает, где web-сервер будет искать скрипты нашего  приложения,  когда пользователь введет в адресной строке броузера адрес: http://localhost:port/fluxBB. Тег Directory задает права каталогу со скриптами.
    Помещаем скорректированный файл в каталог: D:\Program Files\BitNami WAMPStack\apps\fluxBB\conf
  5. Теперь нужно сообщить web-серверу, что в нашем стеке появилось новое приложение. Открываем файл: D:\Program Files\BitNami WAMPStack\apache2\conf\httpd.conf и добавляем в конец файла следующую строку:
    Include "D:/Program Files/BitNami WAMPStack/apps/fluxBB/conf/fluxBB.conf"
  6. В общем-то это все. Перезапустите WAMPStack (если не знаете как, перегрузите компьютер), и набрав в адресной строке броузера http://localhost:port/fluxBB, запустите скрипты форума. Но можно добавить еще одну красивость. Адрес http://localhost:port позволяет увидеть страницу со списком установленных приложений, вот, примерно, такую:


    Однако, нашего форума здесь нет. Впрочем, добавить его сюда не сложно. Данная страница - это обычный статический html-файл, куда при добавлении в стек приложения добавляются блоки html-блоки. Добавим и мы такой блок вручную:



    В данном фрагменте строку insert_picture_here можно заменить на ссылку на подходящую картинку (а можно не заменять). Вот и все с "ручной" установкой приложения в BitNami WAMPStack! )
    Далее несколько слов, относящихся именно к инсталляции скрипта fluxBB.
  7. Перед развертыванием структуры БД форума требуется создать саму базу в MySQL. Делается это с помощью phpMyAdmin, название БД должно начинаться с префикса bitnami_, например bitnami_fluxbb.
  8. При первом запуске fluxBB открывается страничка для ввода параметров, необходимых для создания таблиц, стартового форума и пр. в нашей новой БД.
    Здесь следует помнить, что:
    логин для создания БД: root
    пароль: тот пароль, который был введен при развертывании стека
    название БД: название БД, которая была создана в п.7
    порт: номер порта MySQL (это не порт apache, который указывается в броузере!), также вводился при развертывании стека. Номер порта можно посмотреть в ini-файле стека: D:\Program Files\BitNami WAMPStack\properties.ini в секции [MySQL].
Ну вот, в общем-то и всё! )