Ответ 1
РЕДАКТИРОВАТЬ: По крайней мере, пока не появится Phusion Passenger for Win, Apache + Mongrel - это путь. Вы можете использовать Apache + FastCGI без Mongrel, но при реальных нагрузках вы получите (более) процессы зомби и (более) утечки памяти.
Вы также можете посмотреть проксирование на Thin таким же образом, как описано ниже. Тем не менее, у меня были некоторые неустойчивости с Thin on Win, хотя это заметно быстрее. AB (Apache Benchmark) - ваш друг здесь!
Настройка Apache + Mongrel в Windows существенно не отличается от * nix.
По сути, вам нужно прокси-запросы, поступающие в Apache в Mongrel. Что это сводится к чему-то вроде этого:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
<VirtualHost localhost:80>
ServerName www.myapp.comm
DocumentRoot "C:/web/myapp/public"
ProxyPass / http://www.myapp.com:3000/
ProxyPassReverse / http://www.myapp.com:3000/
ProxyPreserveHost On
</VirtualHost>
Вставьте это в свой httpd.conf
(или httpd-vhost.conf
, если вы его включите).
Предполагается, что вы собираетесь запускать mongrel на порту 3000, ваш Rails-корневой каталог находится в C:\web\myapp
, и вы получите доступ к приложению на веб-сайте www.myapp.com.
Запустить приложение rails в рабочем режиме:
mongrel_rails start -p 3000 -e production
И прочь вы идете (на самом деле mongrel по умолчанию на порт 3000, чтобы вы могли пропустить -p 3000
, если хотите).
Основное различие заключается в том, что вы не можете демонтировать mongrel в Windows (т.е. запустите его в фоновом режиме). Вместо этого вы можете установить его как услугу с помощью драгоценного камня mongrel_service
.
Кроме того, запуск кластера более сложный, и вы не сможете использовать Capistrano. Дайте мне знать, если вы хотите получить дополнительную информацию.