1

几天前,我的 Sinatra 应用程序在我的本地服务器上运行,但现在它根本没有运行,我得到的只是一个空白屏幕。即使我部署到 Heroku,也没有任何效果。

这是一个 GitHub 存储库,您可以在其中查看我的代码:https ://github.com/aayalur/Sinfoursq

我认为问题出在我的config.ru文件上。

# Gemfile
#require "rubygems"
#require "bundler/setup"
#require "sinatra"

require "./main"

set :run, false
set :raise_errors, true

run Sinatra::Application

谢谢!

4

2 回答 2

2

您的应用程序没有显示任何内容,因为您还没有关闭脚本标签。如果您检查 DOM,您会注意到这一点。

顺便说一句,您启动应用程序两次:一次在main.rb中,然后在config.ru中。
您会注意到,当您使用Ctrl+C该应用程序时:它会再次启动,您必须再次关闭它。

由于您的应用程序需要在 Rack 上运行,请去掉Sinatra.run! if __FILE__ == $0并使用 启动它rackup,如Sinatra 的文档中所述。

这将解决与运行应用程序相关的问题。

于 2012-07-31T14:07:32.700 回答
0

在您的 config.ru 中以这种方式离开:

require "rubygems"
require "bundler"

Bundler.require

require "./app"
run Sinatra::Application
于 2012-07-28T17:41:18.563 回答