我有在多个服务器上运行的应用程序: - 在开发机器 本地 - 在Heroku - 与男乘客在Nginx的Rails 3:如何检测应用程序是否在服务器模式下运行多个不同的环境?
特定服务器上我想推出一个特定的代码(装载一些Redis的键)这只在Web服务器启动时才需要。
我已经做了相当多的挖掘,我发现最好的解决方案是在与初始化执行我的代码:
if defined?(Rails::Server)
#my code
end
这行之有效本地,但似乎滑轨:: Server从不在Heroku或Passanger中定义。
我需要一个适用于任何情况的解决方案,请帮助,这非常重要。
感谢,
亚历
PS:我正在运行的Rails 3.0.4,1.8.7红宝石
上述代码将抛出。你想这个ENV ['server_mode'] ='1' – portforwardpodcast 2013-09-04 22:16:15
修复了它。谢谢。几年之后的 – 2013-09-09 18:48:50
..看来Rails在'config.ru'文件之前加载初始化器 – songyy 2017-11-16 02:45:51