我正在尝试部署我的第一个 Rails 应用程序的草稿。它在我的本地 WEBRick 服务器上运行良好。
但是,在我运行 Apache2 和 Passenger 的 Ubuntu VPS 上,当我在浏览器中导航到应用程序时,我得到:
Error message:
no such file to load -- bundler/setup
Exception class:
LoadError
使用以下回溯:
0 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `gem_original_require'
1 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `require'
2 /home/user/public/foo.com/config/boot.rb 6
3 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `gem_original_require'
4 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `require'
5 /home/user/public/foo.com/config/application.rb 1
6 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `gem_original_require'
7 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `require'
8 /home/user/public/foo.com/config/environment.rb 2
9 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `gem_original_require'
10 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb 36 in `require'
11 config.ru 3
12 /usr/lib/ruby/vendor_ruby/rack/builder.rb 51 in `instance_eval'
13 /usr/lib/ruby/vendor_ruby/rack/builder.rb 51 in `initialize'
14 config.ru 1 in `new'
15 config.ru 1
该应用程序是使用 Ruby v1.9.3(或者我认为是这样)构建的,我已经在 Ubuntu 上安装了它(在应用程序根目录中,ruby -v
返回ruby 1.9.3p286 (2012-10-12 revision 37165) [i686-linux]
)。
根据这个问题,我已经运行gem install bundle
并bundle install
在应用程序根目录中。我还gemset
从我的本地机器导入了正确的 VPS 应用程序根目录。
根据这个问题,我试图将 gem set 更改为/home/user/.rvm/gems/ruby-1.9.3-p286@foo
(其中 foo 是正在使用的 gemset 的名称),但这只会使回溯更长。
任何帮助进一步解决此问题将不胜感激!
编辑:在重新安装 Rails、Passenger 和 Ruby(但不是 RVM)之前,我终于通过卸载 Rails、RVM、Ruby(RVM 版本)和Passenger 让我的应用程序正常运行。