Запуск phusion пассажира на работающем apache
У меня есть Apache (-v):
Server version: Apache/2.0.63
Server built: Nov 29 2009 15:23:34
Cpanel::Easy::Apache v3.2.0 rev4899
Я хочу запустить новое приложение Синатра на пассажирском. Я только что установил пассажирский драгоценный камень. Итак, теперь мне нужно настроить конфигурацию Apache.
В httpd.conf есть много настроек других приложений на сервере. Поэтому я просто не могу переустановить Apache с помощью модуля passenger-install-apache2-module. Мне нужно настроить существующий Apache с пассажиром. Что мне теперь делать?
1 ответ
Шаг первый: беги 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
который обнаруживается Пассажиром автоматически.
Для приложений Rails:
<VirtualHost *:80>
ServerName art.waywardgypsy.com
DocumentRoot /www/waywardgypsy-art/current/public
ExpiresDefault "access plus 10 years"
</VirtualHost>
Затем я использую Capistrano для развертывания приложения Rails в /www/waywardgypsy-art
,
В обоих случаях .../current/public
В каталоге есть файлы статического характера, такие как изображения, CSS и т. д. Они обслуживаются непосредственно из Apache. Пассажир просматривает конфигурацию виртуального хоста и проверяет Sinatra или Rails, и, если он находит соответствующий файл конфигурации, он будет рассматривать его как соответствующую прикладную среду.
Пассажир не повлияет на виртуальные хосты, у которых нет файла конфигурации Sinatra (config.ru
) или рельсы (config/boot.rb
).