【问题标题】:Passenger "No such file to load" error for Model模型的乘客“没有要加载的文件”错误
【发布时间】:2012-02-08 14:44:37
【问题描述】:

我在将 Rails 3 应用程序部署到运行 Ubuntu 11.10 的 Passenger/Apache2/RVM 服务器时遇到问题。

我收到了错误:

应用程序需要的源文件丢失。

...

错误消息:没有要加载的文件 -- 目标

异常类:LoadError

Goal 是我的 Rails 模型之一。

我见过很多人有类似的错误消息,但他们的问题似乎与缺少捆绑包/宝石有关 - 而不是模型文件!通过确保正确设置权限来解决他们的问题,为此我得到了:

Apache 作为 www-data 运行,Passenger 也是如此。 RVM 安装为 www-data,我已将整个 web 应用程序目录更改为 www-data。

我已经为此苦苦挣扎了一段时间,但我真的没有想法 - 如果有人有任何建议,我将非常感激!

【问题讨论】:

    标签: ruby-on-rails passenger


    【解决方案1】:

    您的 Rails 应用程序的文件结构可能有误。您确定在 {your_app_root_url}/app/models/ 中有“goal.rb”文件吗?

    对我来说,如果我在您在浏览器中查看应用程序时看到错误,那么您的 rails 应用程序和乘客(使用 apache2)似乎工作正常。另一种可能性是您可能正在查看乘客设置的错误应用文件夹。

    很难说哪里出了问题。请提供有关如何使用 rails 应用程序目录设置乘客的更多详细信息。如果您可以显示应用程序内部的内容(应用程序结构)以及 goal.rb 模型文件内部的内容,这也会有所帮助。

    【讨论】:

    • 您好,感谢您的回复。该模型在标准位置。有趣的是,与此同时,我已将 RailsEnv 设置为开发,并且一切都变得栩栩如生——因此这可能是两个环境配置文件之间存在差异的问题。
    【解决方案2】:

    好吧,我已经解决了。事实证明,在完全不相关的模型中解决 yaml 编码模型档案(即明确要求目标)的问题导致错误出现。看起来它只在生产中崭露头角 - 可能是由于开发和生产中使用的类加载器之间的差异。

    很难找到...堆栈跟踪没有包含对问题实际所在位置的引用!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-13
      • 2013-02-20
      • 2011-09-05
      • 1970-01-01
      • 1970-01-01
      • 2011-03-20
      • 1970-01-01
      • 2011-04-30
      相关资源
      最近更新 更多