我的同事有一个使用Nginx,Phusion Passenger和RVM的Rails开发环境。当他试图加载一个项目时,它抱怨它需要一个不同版本的Ruby而不是可用的项目:
The given ruby environment requires ruby-1.9.2-p290 (versus ree-1.8.7-2011.03) (RVM::IncompatibleRubyError)
我们正在从REE转向MRI Ruby。这是我到目前为止所检查的内容:
.rvmrc
为rvm use --create default@ourapp
。rvm list default
返回ruby-1.9.2-p290
passenger_root
和passenger_ruby
我还缺少其他什么吗?
答案 0 :(得分:0)
Passenger必须使用特定版本的Ruby进行编译,并且从那时起就被锁定。如果不运行passenger-install-X-module
方案,你不能只在RVM中切换它。
答案 1 :(得分:0)
如果你真的想使用不同的红宝石并且尊重RVM,请使用apache + unicorn。为apache安装mod_proxy和mod_rewrite模块,使用unicorn.conf设置unicorn_rails并运行'unicorn_rails -E production -D -c config / unicorn.conf'。假设您将独角兽的配置放在rails app的config目录中。