Встановлення PHP 5, CF 8, CF 9 та Railo 3.1 з Apache 2 в Ubuntu - частина 2

Продовжуємо розповідь про налаштування середовища для CFML-розробника.

В першій частині розповіді ми дізналися як налаштувати Apache 2, PHP 5, Java та ColdFusion 8.

 

Час переходити до наступного етапу -- встановлення ColdFusion 9 (Centaur).

Хочу зауважити, що налаштування підпорядковані наступному принципові: CF9 поки в беті, тому використовується для експериментів та навчання. Вона не має заважати роботі CF8, хоча й намагатиметься.

Отже, нам знову потрібен буде дистрибутив. З огляду на статус, він поки доступний тільки на Adobe Labs. На момент написання цієї статті у мене вже була beta2, тому я й використвуватиму саме її, хоч і доступна вже більш нова версія.

Робимо такі самі кроки:

chmod +x centaur-beta2-linux.bin

sudo ./centaur-beta2-linux.bin

Хто вже має досвід встановлення CF8(9) може сміливо пропускати наступні пояснення з малюнками.

Першим кроком є вибір типу встановлення, нас цікавить Developer Edition та вид "Server configuration". Я впевнений, що инші три способи теж можливі для вирішення нашої основної задачі, але я вирішив зупинитися саме на першому, бо він мене цілком влаштовує.

01-install-type.png

Далі потрібно обрати компоненти до встановлення. Я зазвичай обираю все, крім запуску CF на старті системи, бо полюбляю сам контролювати цей процес. До того ж, мій лептоп є й домашньою машиною, тому не завжди й потрібен запущений CF-сервер.

02-subcomponent.png

Як вже було сказано відносно CF8, місцем встановлення у мене є /opt, а конкретно /opt/coldfusion9.

03-folder.png

Як нормальне ПЗ ColdFusion здогадається, що у нас вже є встановлена попередня версія та запропонує або замінити її (в сенсі конфігурації веб-сервера), або працювати поруч. З огляду на те, що ми вже зробили всі налаштування CF8+Apache2, нам підходить саме перший спосіб. Так само на наступному кроці ми обираємо пункт Add Web Server Configuration:

04-existing-installation-web-server.png

Далі йдуть налаштування Apache2, характерні для Ubuntu.

05-apache.png

Наступний пункт також вже був пояснений: я не бажаю заміняти існуючу CFIDE, тому вказую інший шлях для домашньої теки.

06-webroot.png

Я надаю перевагу тому, щоб сервер працював з правами мого користувача, щоб запобігти проблемам із записом файлів до моєї домашньої теки. У випадку персонального серверу для розробки це допустимий варіянт, у випадку ж налаштування "бойового" (production) сервера варто бути більш уважним до вибору задля кращої безпеки.

07-user.png

Так як мені жодного разу не знадобилася взаємодія з OpenOffice, я зазвичай відмовляюся від пропозиції інтеграції. За наявності такої потреби треба буде зробити ще якісь налаштування, мабуть.

08-openoffice.png

Нарешті, залишається задати пароль адміністратора та увімкнути RDS (якщо потрібно) та задати йому пароль.

09-password-rds.png

Насамкінець надається можливість переглянути всі введені дані та запустити процес інсталяції. Це займе кільканадцять хвилин.

10-summary.png

Перед тим, як приступати до налаштувань Apache, переконаємося, що сервер встановлено коректно та працює. Для цього запустимо CF9:

cd /opt/coldfusion9/bin

sudo ./coldfusion start

Виведення консолі при першому запускові буде десь наступним (крім повідомлення Amarok, що невчасно перемкнув пісню :-) )

11-startup.png

Звісно, CF9 встановить себе глобально, тому нахабно влізе на всі віртуальні хости. Головне, щоб <cfdump var="#server#">, покладений до теки будь-якого хосту показував наступне:

12-cf9dump.png

Тепер можна спокійно вимкнути CF9 та перейти до налаштувань Apache, котрі майже ідентичні налаштуванням CF8.

 

Описуємо модуль:

/etc/apache2/mods-available/cf9.load

LoadModule jrun_module /opt/coldfusion9/runtime/lib/wsconfig/1/mod_jrun22.so

Створюємо файл /etc/apache2/cf9connector з рештою конфігурації модуля:

# JRun Settings
<IfModule mod_jrun22.c>
    JRunConfig Verbose false
    JRunConfig Apialloc false
    JRunConfig Ignoresuffixmap false
    JRunConfig Serverstore /opt/coldfusion9/runtime/lib/wsconfig/1/jrunserver.store
    JRunConfig Bootstrap 127.0.0.1:51800
    #JRunConfig Errorurl url <optionally redirect to this URL on errors>
    #JRunConfig ProxyRetryInterval 600 <number of seconds to wait before trying to reconnect to unreachable clustered server>
    #JRunConfig ConnectTimeout 15 <number of seconds to wait on a socket connect to a jrun server>
    #JRunConfig RecvTimeout 300 <number of seconds to wait on a socket receive to a jrun server>
    #JRunConfig SendTimeout 15 <number of seconds to wait on a socket send to a jrun server>
    AddHandler jrun-handler .jsp .jws .cfm .cfml .cfc .cfr .cfswf
</IfModule>

Залишаємо httpd.conf порожнім.

Підкажемо Apache, що у нас є новий модуль для нього:

sudo a2enmode cf9

 

Налаштуємо власне віртуальний хост

/etc/apache2/sites-available/localhost.cf9

Вміст його майже ідентичний тому, що вже було показано для CF8:

NameVirtualHost localhost.cf9
<VirtualHost localhost.cf9>

    ServerAdmin SetYourEmail@ServerName.tld

    ServerName localhost.cf9   
    DocumentRoot /home/trovich/www/cf9

    <Directory /home/trovich/www/cf9/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        allow from all
        DirectoryIndex index.cfm
    </Directory>

    ErrorLog /var/log/apache2/error.localhost.cf9.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog /var/log/apache2/access.localhost.cf9.log combined

    Include cf9connector

</VirtualHost>

Зверніть увагу на змінені шляхи та ім'я файлу конектора.

Нарешті, завершимо операцію командами:

sudo a2ensite localhost.cf9

sudo /etc/init.d/apache2 restart

 

Насамкінець, пробуємо запустити ColdFusion-сервер та переконатися, що все працює.

Робимо копію скрипта запуску:

sudo /etc/init.d/cf9 [start|stop]

Створюємо http://localhost.cf9/server.cfm з текстом <cfdump var="#server#">, маємо знову побачити знайоме:

12-cf9dump.png

У випадку помилок так само звертаємося до журналів Apache, як вже було описано вище.

 

На даний момент єдиною задачею, котру не можна розв'язати в цій конфігурації, є одночасна робота CF8 та CF9. Вони утилізують модуль з однаковим іменем (jrun_module), що не дозволяє запускати та використовувати їх одночасно при даній конфігурації Apache.

Так чи інакше, тримати два запущених процеси ColdFusion не в моїх правилах, тому конфігурація визнається задовільною.

Запущені ж поодинці вони працюють прекрасно.

 

Встановлення PHP 5, CF 8, CF 9 та Railo 3.1 з Apache 2 в Ubuntu - частина 1

Встановлення PHP 5, CF 8, CF 9 та Railo 3.1 з Apache 2 в Ubuntu - частина 3

 

Автор: Сергій Галашин | Опубліковано: 29.09.2009 о 10:04 | Категорії: Apache - ColdFusion 8 - ColdFusion 9 - HOWTO - PHP - Railo -

Відгуки