Saturday, 31 July 2010

Установка Passenger (mod_rails) на Debian 5 Lenny

Итак, это самый правильный на данный момент способ запуска Rails софта, но в стандартных репо Passenger отсутствует, поэтому будем собирать его почти из сорцов.

Ставим Апача и Ruby
apt-get install -y apache2 apache2-mpm-prefork ruby1.8 rubygems1.8


Скачиваем gem Passwngerа:
gem install passenger


Ставим дополнительные gem ы:

gem install bacon


Ставим dev пакеты, необходимые для сборки модуля:
apt-get install -y libapr1-dev apache2-prefork-dev


Запускаем инсталлятор модуля:

/var/lib/gems/1.8/bin/passenger-install-apache2-module


Please edit your Apache configuration file, and add these lines:

После установки скрипт выдаст конфиг, который нужно вписать Апачу:
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.15/ext/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.15
PassengerRuby /usr/bin/ruby1.8


Создаем файл:
vi /etc/apache2/mods-enabled/passenger.conf

И добавляем в него указанные строки.

Перезапускаем Апача:
/etc/init.d/apache2 restart


Проверяем, подцепился ли модуль к Апаче:
apache2ctl -M 2>&1 | grep pass
passenger_module (shared)


Теперь остается дело за малым - подключить собственно Rails приложение для работы под Passenger ом, для примера сделаем это с RedMine:

rm /etc/apache2/sites-enabled/000-default
vi /etc/apache2/sites-enabled/000-default


Вносим в конфиг следующие строки:

<VirtualHost *:80>
DocumentRoot /opt/redmine/public
<Directory /opt/redmine/public>
AllowOverride None
</Directory>
</VirtualHost>


Перезапускаем Апача:

/etc/init.d/apache2 restart


Вуаля, теперь заходя на 80й порт сервера можно видеть отлично работающий RedMine под Апачем :)

Кстати, Passenger с недавнего времени есть в репо Debian:

libapache2-mod-passenger - Rails and Rack support for Apache2


Источник: http://articles.slicehost.com/2009/7/3/debian-lenny-installing-passenger-with-apache

No comments:

Post a Comment

Note: only a member of this blog may post a comment.