【问题标题】:Application works on Heroku but no longer works locally?应用程序在 Heroku 上工作,但不再在本地工作?
【发布时间】:2012-01-24 05:35:36
【问题描述】:

好的, 我一直在 sinatra 开发一个小型 webapp。周末休假后,我遇到了一个奇怪的问题,无法追踪。

我的应用程序托管在 Heroku 上,并且在那里运行良好。但是,现在该应用程序不再在本地运行。即使从 Heroku 克隆源代码也会产生同样的问题。

== Sinatra/1.3.2 has taken the stage on 4567 for development with backup from Thin
>> Thin web server (v1.3.1 codename Triple Espresso)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:4567, CTRL+C to stop
!! Unexpected error while processing request: undefined method `<<' for nil:NilClass

我已尝试在三台不同的计算机(intel macmini、thunderbolt MacBook pro 和 G4 mini)上再次运行此程序,都产生相同的错误。

我检查了我的代码,寻找任何未封闭或不完整的代码,但找不到任何东西。即使使用 git 恢复到已知的工作版本也会产生相同的错误。

任何帮助都将不胜感激,因为我对 ruby​​ 的了解仍然相当有限。如果有人有兴趣/愿意看看我的代码,我愿意分享。

唯一可能改变的是:我更新了我的开发机器上的 gems 已经更新了。但我不明白这会对其他两台机器的情况产生什么影响。

【问题讨论】:

  • 试试 git grep "
  • 您也可以检查较新的机架版本是否有任何改变。您可能希望在 Gemfile 中恢复到 1.3。
  • 这就是问题所在。我没有注意到机架是在更新的。感谢您的意见。
  • Rack 1.4 中有更多的回归。很烦人,但很好,你可以解决它。

标签: ruby heroku sinatra


【解决方案1】:

Here's a discussion 在不同的应用程序上与 Sinatra 出现相同的错误。讨论了一个修复程序,一个确定的解决方法是将 Rack 版本从 1.4.0 回滚到 1.3.6。

【讨论】:

  • 太棒了!这正是问题所在。非常感谢!
猜你喜欢
  • 1970-01-01
  • 2021-03-05
  • 1970-01-01
  • 2022-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-24
相关资源
最近更新 更多