我刚刚尝试升级到 Unicorn 3.0。我更改了 Gemfile 并进行了捆绑安装。重新启动 Unicorn 时,我收到大量错误,开头为:
Unhandled listen loop exception #<Errno::ENOSYS: Function not implemented - accept>.
/usr/lib/ruby/gems/1.8/gems/unicorn-3.0.0/lib/unicorn/http_server.rb:593:in `kgio_tryaccept'
我在使用 Ubuntu 10.04。
还有,谁能告诉我为什么我不能使用比最新安装的版本更旧的 Gem 版本?出现上述错误后,我刚刚将 Gemfile 中的 Unicorn 版本号更改为 1.1.4。但这并没有解决问题,Ruby 告诉我
You have already activated unicorn 3.0.0, but your Gemfile requires unicorn 1.1.4. Consider using bundle exec. (Gem::LoadError)
我真有必要这么做吗?
提前感谢你们的帮助。
答案1
Bundler 负责加载正确版本的 gem。要让您的服务器使用unicorn 1.1.4
更改Gemfile
以指向该版本的 unicorn,请从您的服务器运行bundle install
并卸载unicorn v3 gem
。