【问题标题】:NoMethodError when deploying Sinatra Rack application with Passenger使用Passenger 部署Sinatra Rack 应用程序时出现NoMethodError
【发布时间】:2010-11-10 22:03:10
【问题描述】:

我在使用Passenger 和Apache 部署我的Sinatra 应用程序时遇到此错误:

Exception NoMethodError in application (undefined method `call' for nil:NilClass)

我可以启动应用程序

ruby myapp.rb

或作为机架应用程序与

ruby config.ru

并且没有问题。任何想法为什么这只发生在乘客身上?

【问题讨论】:

  • 你应该发布完整的回溯。
  • 如果您仍然遇到此问题,请显示完整的错误(特别是包括文件和行号),以便我们找出在 nil 值上调用 #call 的位置。

标签: sinatra rack passenger


【解决方案1】:

聚会有点晚了,但我刚刚遇到了这种情况。结果我需要告诉 Sinatra 不要“运行”应用程序。

configure do
  set :run, false
  # ...
end

来自 Sintara 设置文档:

run - 如果启用,Sinatra 将处理启动 Web 服务器,如果使用 rackup 或其他方式则不要启用。

这里是 Sinatra 的 available settings 列表

祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-28
    • 2014-05-09
    • 2010-12-22
    • 1970-01-01
    • 2013-06-13
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多