【问题标题】:How do I run a Sinatra application on G-WAN?如何在 G-WAN 上运行 Sinatra 应用程序?
【发布时间】:2013-07-01 01:09:06
【问题描述】:

我正在尝试编写一个 Ruby Web 应用程序,我想使用 Sinatra 提供的功能。

我使用了这个代码:

  require 'rubygems'
  require 'sinatra'

  get '/' do
      'Hello, world!'
  end

我在浏览器中输入了 localhost:8080/?hello.rb 并收到一条错误消息,指出脚本无法找到 sinatra。 我还尝试使用以下命令运行 sinatra 应用程序:

  ruby hello.rb 

这次成功了! 所以我怀疑问题不在于我的代码,而在于我使用 G-WAN 提供 Ruby 脚本的方式。

【问题讨论】:

    标签: ruby rubygems sinatra rack g-wan


    【解决方案1】:

    Ruby(如JavaPHP)可能使用配置文件和/或环境变量来指定在哪里可以找到包、模块和库。

    虽然 G-WAN 收到了类似的对 asm, C, C++, D, Objective-C, Java and C# 支持的请求,但 Ruby 用户到目前为止并未表现出对该领域的兴趣。

    如果您向我们指出相关的 Ruby 文档,我们将尝试添加此 Ruby 功能(就像为其他语言所做的那样)。

    【讨论】:

    • 我愿意在这个问题上与您合作。请提供一些我的联系信息。
    【解决方案2】:

    Sinatra 期望由机架兼容的服务器运行,而 G-Wan 显然不是。当您手动运行脚本时,它是由与 Ruby 捆绑在一起的 WEBrick 服务器运行的。兼容服务器的示例有thinunicorn 或带有phusion passenger 的apache/nginx

    【讨论】:

    • 你知道任何不需要机架兼容性的 Ruby Web 框架吗?或者您能建议如何使 G-WAN 机架兼容?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-11
    • 1970-01-01
    • 2011-07-02
    • 2012-03-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多