пассажирский фьюжн mod_rails на Apache висит - PullRequest
2 голосов
/ 12 мая 2011

Я запускаю Apache 2.2.3 с пассажирским 3.0.7 (на доисторическом SLES11 linux). когда запрос проходит через пассажира, он порождает процесс приложения, но затем зависает навсегда, как будто ни одно приложение не может запуститься.

Я протестировал тривиальное приложение hello world rack, а также недавно созданный скелет rails 3 app. Приложения запускаются в рабочем режиме на webrick, поэтому никаких проблем с приложениями.

Я проверил разрешения, все они принадлежат пользователю apache.

Пассажир регистрирует в Apache, что он порождал процесс, но URL запроса даже не попадает в журнал доступа Apache, и журналы приложений также пусты. Пассажиры говорят, что трассировка показывает, как будто приложения зависали во время запуска, однако я не нахожу никаких следов, даже если они доходят до config.ru. Все это наводит меня на мысль, что это порождает пассажиров.

Это слишком загадочно, не может ли порожденный процесс не получать ресурсы из-за какой-то странной конфигурации Apache?

Это кому-нибудь звонит? вся помощь или подсказки для отладки приветствуются

Я поднял эту проблему в группе Google phusion, но не нашел решения. https://groups.google.com/forum/#!topic/phusion-passenger/GlQIBNTyF6A

Vik

1 Ответ

0 голосов
/ 09 мая 2012

У меня была такая же проблема с Nginx 1.0.15, Passenger 3.0.12, Rails 2.3.14 и Bundler 1.1.3. Nginx запустится нормально, затем Passenger попытается создать приложение, а затем ничего. Никаких исключений или чего-то еще, просто бесконечный цикл попыток порождения приложения.

Добавление config.ru в приложение решило проблему немедленно! Для Rails 2.3 это должно выглядеть так:

require "config/environment"

use Rails::Rack::LogTailer
use Rails::Rack::Static
run ActionController::Dispatcher.new

Теперь работает как шарм.

...