Развернутое приложение Rails всегда появляется в среде разработки - PullRequest
0 голосов
/ 02 ноября 2010

Использование Rails 3.0.1, Apache 2.2.9 и Passenger 3.0.0 в Debian.

По какой-то загадочной причине приложение Rails появляется в среде разработки. Я дважды проверил конфигурацию Apache, файлы VirtualHost и т. Д., И есть ноль экземпляров «RailsEnv» или «RAILS_ENV» в / etc / apache2 или в самом каталоге приложения.

Хуже того, даже если я делаю помещаю строку "RailsEnv production" в блок Directory в файле VirtualHost, это не имеет никакого значения, и приложение все еще появляется в среде разработки.

Ничего интересного не регистрируется, если я установил PassengerLogLevel в 1.

Буду весьма признателен за любую помощь в том, в чем заключается проблема, или, по крайней мере, в плане действий по ее выявлению.

Ответы [ 3 ]

2 голосов
/ 03 ноября 2010

Это связано с тем, что на config.ru ваше приложение определяется как приложение Rack, а не как приложение Rails, и поэтому вам необходимо установить RackEnv вместо RailsEnv. Приложение "Rails" относится к приложению "Rails 1 или 2". Приложения Rails 3 считаются приложениями Rack.

0 голосов
/ 04 февраля 2011

Тот же симптом, но ни одно из предложенных решений не работает для меня.Впервые я заметил это, когда установил для моего тега <body> значение <body class="<%= Rails.env %>"> и определил цвет фона для класса разработки, который заметно отличается от цвета фона в рабочем классе.Все, что я когда-либо вижу (производство и разработка), это цвет разработки.И, конечно, просмотр исходной веб-страницы в браузере показывает, что генерируемый класс является разработкой.Я переименовал config.ru в ~ config.ru и перезапустил Apache2, но это не дало результатов.Я добавил RackEnv production в мой файл виртуального хоста *: 80, в котором установлены другие атрибуты Passenger.Это не оказало влияния.Поэтому я изменил ~ config.ru на config.ru, перезапустил Apache2 и до сих пор не вижу изменений.Я ценю объяснение, данное @Hongli о запуске Rack по сравнению с Rails.Я просто хочу, чтобы мой сервер слушал его!Я даже сделал рекурсивный анализ листинга для .htaccess - ничего не найдено.По крайней мере, я думаю, что теперь я знаю, где продолжать копаться.


Apache 2.2.15, Rails 3.0.3, Passenger 3.0.2, Mac OS X Server 10.6.6

0 голосов
/ 02 ноября 2010

Поработав некоторое время и попробовав случайные вещи из сети, я обнаружил, что удаление файла config.ru, созданного Rails, решает проблему, не вызывая прекращения работы приложения. Почему это вызвало проблему, мне неизвестно, но любой, кто сталкивался с такой же проблемой, мог бы попробовать это решение.

...