繁体   English   中英

生产模式(Apache和Thin)中的Rails 3找不到rubygems

[英]Rails 3 in production mode (apache and thin) can't find rubygems

如果这个问题重复出现,我事先表示歉意,但是我已经做了很多搜索,但没有找到任何有助于解决我的问题的答案。 我正在Ubuntu服务器上运行Rails 3应用程序,并且Apache代理变薄了。 我可以运行Thin或WebBrick的单个实例,并且我的应用程序加载在端口3000上。我正在使用Slicehost上的指示信息,说明如何使用Apache和Thin为Rails提供服务(我过去曾做过),但是无论何时尝试要启动守护程序瘦进程,每个瘦服务器的日志如下所示:

/[ my application's location]/config/boot.rb:2:in `require': no such file to load -- rubygems (LoadError)
        from /home/geoff/ldb/doubleday/config/boot.rb:2
        from /home/geoff/ldb/doubleday/config/application.rb:1:in `require'
        from /home/geoff/ldb/doubleday/config/application.rb:1
        from /home/geoff/ldb/doubleday/config/environment.rb:2:in `require'
        from /home/geoff/ldb/doubleday/config/environment.rb:2
        from /usr/lib/ruby/1.8/rack/adapter/rails.rb:43:in `require'
        from /usr/lib/ruby/1.8/rack/adapter/rails.rb:43:in `load_application'
        from /usr/lib/ruby/1.8/rack/adapter/rails.rb:23:in `initialize'
        from /usr/lib/ruby/1.8/rack/adapter/loader.rb:36:in `new'
        from /usr/lib/ruby/1.8/rack/adapter/loader.rb:36:in `for'
        from /usr/lib/ruby/1.8/thin/controllers/controller.rb:163:in `load_adapter'
        from /usr/lib/ruby/1.8/thin/controllers/controller.rb:67:in `start'
        from /usr/lib/ruby/1.8/thin/runner.rb:174:in `send'
        from /usr/lib/ruby/1.8/thin/runner.rb:174:in `run_command'
        from /usr/lib/ruby/1.8/thin/runner.rb:140:in `run!'
        from /usr/bin/thin1.8:6

我正在运行Ruby 1.9.2,RubyGems 1.5.0和RVM。 我可以作为root,我自己或www-data的外壳中的非守护进程启动rails应用。 似乎每当我尝试将其作为守护程序运行时,它都无法正确加载路径。 我尝试将环境变量插入一些文件中以帮助Rails找到Rubygems,但这似乎不起作用。 关于如何在守护程序启动时帮助Rails找到Rubygems的任何想法?

谢谢,杰夫

这看起来像是RVM错误。 您应该检查瘦服务器的加载方式,它需要使用RVM包装器或类似的东西来配置正确的二进制文件和gemset。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM