Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 部署的Rails应用程序总是出现在开发环境中_Ruby On Rails_Ruby On Rails 3_Passenger - Fatal编程技术网

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

Ruby on rails 部署的Rails应用程序总是出现在开发环境中,ruby-on-rails,ruby-on-rails-3,passenger,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”的实例 更糟糕的是,即使我在VirtualHost文件的目录块中放了一个“RailsEnv生产”行,也没有什么区别,应用程序仍然在开发环境中出现 如果我将PassengerLogLev

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

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

更糟糕的是,即使我在VirtualHost文件的目录块中放了一个“RailsEnv生产”行,也没有什么区别,应用程序仍然在开发环境中出现

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


非常感谢您对问题所在的任何帮助,或者至少是确定问题的行动方案。

经过一段时间的反复思考,并在网上尝试了一些随机的东西后,我发现删除Rails生成的config.ru文件可以解决问题,而不会导致应用程序停止运行。我仍然不知道这是为什么导致问题,但是任何遇到同样问题的人都可以尝试该解决方案。

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

这里的症状相同,但建议的解决方案都不适合我。当我将
标记设置为
并为开发类定义与生产类中的背景颜色明显不同的背景颜色时,我第一次注意到了这一点。我所看到的(生产和开发)是开发颜色。当然,在浏览器中查看网页的源代码表明生成的类是开发类。我将config.ru重命名为~config.ru并重新启动了Apache2,但没有产生任何影响。我将RackNV production添加到我的*:80虚拟主机文件中,其中设置了其他乘客属性。这没有产生影响。因此,我将~config.ru重置为config.ru,重新启动了Apache2,但仍然没有看到任何更改。我很欣赏@Hongli对机架启动和Rails启动的解释。我只希望我的服务器能听他的!我甚至为.htaccess做了一个递归列表grepping——没有找到。至少我想我现在知道该在哪里闲逛了



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

Passenger 3是最新的最终版本。在提交问题之前尝试使用它。从较旧的apt get Passenger切换到当前的3.0.0 gem;问题仍然存在。有了这些信息,我发现一些傻瓜把“RackNV开发”放在了一个.htaccess文件中。删除这些选项可以使默认生产环境正常运行。非常感谢您的帮助。为了继续我的技术,我在虚拟主机文件中设置了
RackEnv生产
,然后在我的app/views/layout/application.html.erb文件中设置了
,以达到让生产环境使用与开发中的背景色不同的背景色的预期效果。