У меня на сервере apache2 работает Phusion Passenger. На этой машине у меня есть два виртуальных хоста, каждый из которых выглядит следующим образом (пути для второго виртуального хоста различны ... но другие директивы одинаковы)
ServerName beta.mysite.us
DocumentRoot "/ var / www / beta / mysite / public"
<Directory "/var/www/beta/mysite/public">
RewriteEngine on
AllowOverride All
Options FollowSymLinks
</Directory>
# http://www.modrails.com/documentation/Users guide.html
PassengerAppRoot "/var/www/beta/mysite"
RailsEnv development
PassengerMaxPoolSize 6
PassengerDefaultUser mysite
# PassengerHighPerformance does come at a trade off of lack of support for mod_rewrite
PassengerHighPerformance off
RailsSpawnMethod conservative
RailsFrameworkSpawnerIdleTime 0
RailsAppSpawnerIdleTime 0
PassengerPoolIdleTime 300
ErrorLog "/var/log/httpd/mysite-beta-error_log"
CustomLog "/var/log/httpd/mysite-beta-access_log" common
Apache запускается нормально. Я могу перейти к одному из виртуальных хостов, и он будет загружать Rails и работать. Когда я перехожу ко второму виртуальному хосту, появляется процесс ruby («Rails: / var / www / mysite / current» в соответствии с ps awuxf) и использует 100% CPU. Этот процесс никогда не завершается. На данный момент ни один виртуальный хост не реагирует. Если я уничтожу нарушающий процесс ruby, другой процесс ruby заменит его и использует 100% ЦП. Если я убиваю эти процессы примерно 5-6 раз, то оба виртуальных хоста отвечают, но они каким-то образом запускают одно и то же приложение Rails?!
У меня есть еще один виртуальный хост на этой машине, который не настроен с phusion passenger. У этого никогда не возникает проблем.
Любая помощь / идеи будут высоко оценены!