所以这是我的问题。我使用Capistrano将我的Rails 3应用程序部署到安装了Phusion Passenger 3的Ubuntu服务器上。一切都应该正常,但我不断收到此错误消息。
无法在/ var / www / rails / releases / 20100916074325中找到Gemfile。 (捆扎机:: GemfileNotFound)
错误消息中的目录(我为澄清而添加)确实存在于系统上,Gemfile也是如此。在错误消息下面,堆栈跟踪显示错误被抛出
/usr/lib/ruby/gems/1.8/gems/bundler-1.0.0/lib/bundler/shared_helpers.rb
所以我进去并添加了输出以检查该路径上是否存在目录,并且每一个都返回false,一直到'www'。我不相信。
为什么在Passenger下运行的Bundler不能找到这些路径?我该怎么做才能解决它? (此时我即将放弃乘客。)
答案 0 :(得分:2)
这几乎肯定是一个许可问题。也就是说,请尝试Phusion Passenger git master;我们已经添加了积极的权限检查,所以它现在应该告诉你确切的错误和需要修复的内容,而不是让错误的错误信息出现,就像你现在看到的一样。
Bundler认为由于权限问题,路径不存在。具体来说:如果File.directory?("/a/b/c")
,/
或/a
没有当前进程所有者的正确可执行位,则/a/b
会返回false。