Шаг один: выполненный passenger-install-apache2-module
как корень. Это установит пассажирский модуль, который требуется.
Шаг два: passenger-install-apache2-module
сценарий скажет Вам, что добавить к httpd.conf. Добавьте его. Это не должно влиять ни на какие другие приложения, которые Вы запускаете.
Шаг три: Для каждого Ruby on Rails или приложения Sinatra, настройте его в Apache. Я делаю это для приложений Sinatra:
<VirtualHost *:80>
ServerName hman.flame.org
DocumentRoot /www/hman/current/public
ExpiresDefault "access plus 10 years"
</VirtualHost>
Я затем имею config.ru
в /www/hman/current
который обнаруживается Пассажиром автоматически.
Для приложений для направляющих:
<VirtualHost *:80>
ServerName art.waywardgypsy.com
DocumentRoot /www/waywardgypsy-art/current/public
ExpiresDefault "access plus 10 years"
</VirtualHost>
Я затем использую Capistrano для развертывания приложения направляющих на /www/waywardgypsy-art
.
В обоих случаях, .../current/public
каталог имеет файлы, которые статичны по своей природе, такие как изображения, CSS, и т.д. Они подаются непосредственно от Apache. Пассажир изучает конфигурацию виртуального хоста и проверки на Sinatra или направляющие, и если она найдет соответствующий файл конфигурации, то она будет рассматривать его как соответствующую среду разработки приложения.
Пассажир не будет влиять на виртуальные хосты, которые не имеют файла конфигурации Sinatra (config.ru
) или направляющие (config/boot.rb
).
Ваш маршрутизатор не делает ' t поддержка фрезерование шпилек . Это нормально для сетевого оборудования потребительского уровня. К сожалению, с этим ничего не поделать.