部署的Rails应用程序总是会出现在开发环境中

时间:2010-11-02 16:37:54

标签: ruby-on-rails ruby-on-rails-3 passenger

在Debian上使用Rails 3.0.1,Apache 2.2.9和Passenger 3.0.0。

出于某种神秘的原因,Rails应用程序即将出现在开发环境中。我已经仔细检查了Apache配置,VirtualHost文件等,并且在/ etc / apache2或app目录本身中没有“RailsEnv”或“RAILS_ENV”的实例。

更糟糕的是,即使我将“RailsEnv生产”行放入VirtualHost文件的目录块中,它也完全没有区别,并且应用程序仍然出现在开发环境中。 / p>

如果我将PassengerLogLevel设置为1,则不记录任何有趣内容。

任何有关问题的帮助,或至少是确定问题的行动方案,都将不胜感激。

3 个答案:

答案 0 :(得分:2)

这是因为使用config.ru您的应用程序被检测为Rack应用程序,而不是Rails应用程序,因此您需要设置RackEnv而不是RailsEnv。 “Rails”应用程序是指“Rails 1或2”应用程序。 Rails 3应用程序被认为是Rack应用程序。

答案 1 :(得分:0)

在th th and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and为什么这导致了这个问题仍然不为我所知,但遇到同样问题的任何人都可能尝试这个解决方案。

答案 2 :(得分:0)

此处的症状相同,但建议的解决方案均不适合我。当我将<body>标记设置为<body class="<%= Rails.env %>">并为开发类定义背景颜色时,我首先注意到这一点,该背景颜色与生产类中的背景颜色明显不同。我所看到的(生产和发展)都是发展的颜色。当然,在浏览器中查看网页的来源表明正在生成的类是开发。我将config.ru重命名为~config.ru并重新启动了Apache2,但没有产生任何影响。我将RackEnv生产添加到我的*:80虚拟主机文件中,其中设置了其他Passenger属性。这没有影响。所以我重置~config.ru成为config.ru,重新启动Apache2仍然没有看到更改。我很欣赏@Hongli对Rack创业公司和Rails创业公司的解释。我只是希望我的服务器会听他的!我甚至为.htaccess做了一个递归列表grepping - 没有找到。至少我想我现在知道在哪里继续探讨。


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