Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Sinatra应用程序部署到heroku_Heroku_Sinatra - Fatal编程技术网

将Sinatra应用程序部署到heroku

将Sinatra应用程序部署到heroku,heroku,sinatra,Heroku,Sinatra,我正在尝试从部署基本的sinatra应用程序。应用程序似乎正在正确部署和启动,但我看不到它。我错过了什么 #文件 来源'http://rubygems.org' 宝石“西纳特拉” #config.ru 需要“./你好” 运行Sinatra::应用程序 #你好,rb 需要“sinatra” 获取“/”do “你好,世界!” 结束 然后我运行: $ bundle install $ git init $ git add --all $ git commit -m "initial commit"

我正在尝试从部署基本的sinatra应用程序。应用程序似乎正在正确部署和启动,但我看不到它。我错过了什么

#文件
来源'http://rubygems.org'
宝石“西纳特拉”
#config.ru
需要“./你好”
运行Sinatra::应用程序
#你好,rb
需要“sinatra”
获取“/”do
“你好,世界!”
结束
然后我运行:

$ bundle install
$ git init
$ git add --all
$ git commit -m "initial commit"
$ heroku create
$ git push heroku master
$ heroku open
问题是,我得到的只是一个“Heroku |没有这样的应用程序”错误。然后我尝试:

$ heroku restart
$ heroku logs
结果如下所示:

2012-11-02T06:19:24+00:00 heroku[web.1]: Unidling
2012-11-02T06:19:24+00:00 heroku[web.1]: State changed from down to starting
2012-11-02T06:19:27+00:00 heroku[web.1]: Starting process with command `bundle exec rackup config.ru -p 38715`
2012-11-02T06:19:31+00:00 app[web.1]: [2012-11-02 06:19:31] INFO  WEBrick 1.3.1
2012-11-02T06:19:31+00:00 app[web.1]: [2012-11-02 06:19:31] INFO  ruby 1.9.2 (2011-07-09 [x86_64-linux]
2012-11-02T06:19:31+00:00 app[web.1]: [2012-11-02 06:19:31] INFO WEBrick::HTTPServer#start: pid=2 port=38715
2012-11-02T06:19:32+00:00 heroku[web.1]: State changed from starting to up

我刚才尝试了这些完全相同的步骤,效果很好。不知道以前出了什么问题

昨晚我把它改成:

#hello.rb
需要“sinatra”
类HelloApp

它成功了。不知道为什么,但确实如此。奇怪。

有时候推后我不得不等待,尤其是新应用。现在怎么样?我完全按照您的代码进行操作,似乎效果很好。嗯,我会再试一次,可能是heroku出了问题。您最初没有
类HelloApp
?如果不是,这可能就是这里的问题,您会告诉它运行
HelloApp
,而不告诉它什么是
HelloApp
。您可以随时尝试heroku日志,检查是否有错误消息。我在顶部提供的链接中的基本“hello world”应用程序没有定义从hello.rb中的Sinatra::Base继承的类,它只在config.ru中调用
run Sinatra::Application
,因此当它不起作用时我感到困惑。