gpt4 book ai didi

ruby - 如何使用 ruby​​1.9 部署 Rack 应用程序?

转载 作者:太空宇宙 更新时间:2023-11-03 16:37:04 25 4
gpt4 key购买 nike

我一直在尝试让一个简单的 hello world web 应用程序在 Sinatra 上运行。

我有以下设置:

  • config.ru

    require 'hello.rb'
    run Sinatra::Application
  • 你好.rb

    require "sinatra"

    get "/" do
    "Hello World!\n"
    end
  • gem 文件

    source :rubygems
    gem 'sinatra'

如果我运行 ruby hello.rbruby1.9.1 hello.rbrackup 并转到我的浏览器中的正确地址。但是,这在部署到 heroku 或运行 rackup1.9.1 时不起作用。我收到以下错误:

<internal:lib/rubygems/custom_require>:29:in `require': no such file to load -- hello.rb (LoadError)
from <internal:lib/rubygems/custom_require>:29:in `require'
from config.ru:1:in `block in <main>'
from /usr/lib/ruby/1.9.1/rack/builder.rb:46:in `instance_eval'
from /usr/lib/ruby/1.9.1/rack/builder.rb:46:in `initialize'
from config.ru:1:in `new'
from config.ru:1:in `<main>'
from /usr/lib/ruby/1.9.1/rack/builder.rb:35:in `eval'
from /usr/lib/ruby/1.9.1/rack/builder.rb:35:in `parse_file'
from /usr/lib/ruby/1.9.1/rack/server.rb:113:in `app'
from /usr/lib/ruby/1.9.1/rack/server.rb:189:in `wrapped_app'
from /usr/lib/ruby/1.9.1/rack/server.rb:155:in `start'
from /usr/lib/ruby/1.9.1/rack/server.rb:83:in `start'
from /usr/bin/rackup1.9.1:4:in `<main>'

我怎样才能让它工作?我猜 config.ru 应该有所不同,但我不知道要更改什么。

最佳答案

尝试做

require './hello'

require_relative 'hello'

在 Ruby 1.9.2 中默认情况下,当前目录不存在于 LOAD_PATH 中。

关于ruby - 如何使用 ruby​​1.9 部署 Rack 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6479575/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com