【问题标题】:Ruby, Sinatra and Passenger config on ApacheApache 上的 Ruby、Sinatra 和 Passenger 配置
【发布时间】:2023-03-11 22:25:01
【问题描述】:

这可能是一个简单的问题,但我想问的是避免绕圈子。

我已经在 Ubuntu 上安装了 ruby​​ 1.9.2 并设置了乘客以在机器上运行 Apache 2.2。查看网站时出现以下错误:

Permission denied - log/sinatra.log

我已经更改了日志目录的权限,但仍然没有运气。乘客的完整跟踪可以在网站页面上看到:http://monkeh.me/

有谁知道我是否/我做错了什么或发生了什么?

非常感谢

编辑

我发现网站在生产服务器的 4567 端口上使用 WEBrick 运行良好,但使用Passenger 时出现相同的代码错误。我添加了显示错误异常,所以现在得到以下信息:

NoMethodError at /
undefined method `include?' for nil:NilClass
file: resource.rb location: block in attributes= line: 332

你可以在这里看到这个:http://www.monkeh.me/?url=http://www.google.co.uk

有什么想法吗?请帮忙:)

【问题讨论】:

  • 链接的站点没有显示任何乘客踪迹。这是否意味着您解决了问题?
  • 嗨弗罗斯特。问题可能与机架宝石有关。我安装了它并且 sinatra 应用程序的主页可以正常工作,但是在转到后续页面时出现 500 错误,例如:monkeh.me/jirey> 这是将您带到 Google.com 的短 URL。我一直无法找到捕获 500 个错误以查看实际情况的方法。
  • 如果你在本地运行网站,你会得到同样的错误吗?
  • 不,一点也不。我在没有 Apache 的 Mac 10.6.8 上运行它(使用 shotgun 和 webrick 进行测试)。
  • ...我假设日志记录在本地也可以正常工作?在那种情况下,很难知道真正的问题是什么。

标签: ruby sinatra passenger


【解决方案1】:

nil 类的新问题是由于没有正确完成类。加载模型后,我需要添加以下内容:

DataMapper.finalize

感谢@Frost 在 cmets 中的持续帮助。

【讨论】:

    猜你喜欢
    • 2015-07-16
    • 2014-05-30
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 2013-05-22
    • 2015-02-12
    • 2011-03-23
    • 2011-06-05
    相关资源
    最近更新 更多