Апр 4 2008

Установка Ruby On Rails на Debian

Установка Ruby On Rails на Debian Etch. Для примера я буду использовать хост – mytest.exmaple.com.
Веб сервер – Apache 2.x

Шаг 1. Установка пакетов которые нужны для работы Ruby On Rails

apt-get install ruby libzlib-ruby rdoc irb rubygems rails eruby

Шаг 2. Установка Apache2 модуля mod-fcgid
Ruby on Rails можно соединить с Apache2 используя mod-fcgid для этого установим его:

apt-get install apache2 libapache2-mod-fcgid libfcgi-ruby1.8

После установки активируем следующие модули

a2enmod ssl
a2enmod rewrite
a2enmod suexec
a2enmod include

И перезагружаем Apache:

/etc/init.d/apache2 force-reload

Шаг 3. Установка пакетов для работы с MySQL

apt-get install libmysql-ruby mysql-server

Шаг 4. Создание места для Ruby On Rails проектов
Нам нужно создать каталог в котором мы разместим наши RoR проекты. Как вариант я создам каталог /var/rails

mkdir /var/rails

У веб сервера Apache должны быть права на чтение и запись в этот каталог. (www-data в Debian)

chown -R www-data:www-data /var/rails

Сейчас мы создадим свой первый RoR проект, под названием mytest. Для этого нужно переключится на учетную запись www-data что бы Apache мог спокойно работать проектом (чтение+запись).

cd /var/rails
su -m www-data

Сейчас мы ввошли как www-data, приступим к созданию проекта:

rails mytest

Мы создали RoR проект, в каталоге /var/rails появился проект mytest.

Шаг 5. Создаем Virtual Host для RoR проекта
Пришло время создать виртуал хост в Apache для нашего RoR проекта. В этом примере я использую имя хоста mytest.example.com, наш проект заработает по след. ссылке – http://mytest.example.com
Самый легкий путь создать такой виртуальный хост, это заменить данные в /etc/apache2/sites-available/default

cp /etc/apache2/sites-available/default /etc/apache2/sites-available/default_old
cat /dev/null  >/etc/apache2/sites-available/default
vi /etc/apache2/sites-available/default
<virtualhost>
ServerName mytest.example.com
DocumentRoot /var/rails/mytest/public/
</virtualhost>
<directory>
Options ExecCGI FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</directory>

Перезагружаем Apache

/etc/init.d/apache2 restart

Далее открываем http://mytest.example.com в своем браузере. Там вы увидите стандартную страницу Ruby on Rails.
Ruby On Rails