首页 文章

将sinatra app部署到heroku的问题

提问于
浏览
-1

我刚刚尝试将一个基本的sinatra应用程序部署到heroku,每次我尝试通过heroku访问应用程序时我都会在heroku日志中收到以下错误消息

2016-10-14T14:34:12.243266 00:00 heroku [router]:at = error code = H10 desc =“App crashed”method = GET path =“/”host = sleepy-fjord-82689.herokuapp.com request_id = 4e85cc9f-a2e2-4dc4-bbb6-8daa9de6778b fwd =“82.5.195.102”dyno = connect = service = status = 503 bytes = 2016-10-14T14:34:13.108228 00:00 heroku [router]:at = error code = H10 desc =“App crashed”method = GET path =“/ favicon.ico”host = sleepy-fjord-82689.herokuapp.com request_id = c173f495-e2f9-4119-8e45-790e2f55fc6e fwd =“82.5.195.102”dyno = connect = service = status = 503 bytes =

我是heroku的新手,所以我真的不知道为什么会发生这种情况,任何帮助我指向正确方向的人都会受到赞赏 .

2 回答

  • 0

    导航到根目录时,您的应用程序崩溃('/') . 首先确保该应用程序在本地计算机上运行,然后按照rack app guide进行Heroku . 有's a section for Sinatra. If this doesn'工作,请确保您可以正确部署示例中所示的Hello World应用程序 .

  • 0

    你能在这里发布你的Procfile文件和你的config.ru吗?

    如果要检查Procfile是否正常工作,可以使用 foreman gem在本地检查它 . 基本上你需要在Gemfile中将foreman添加到你的开发组中,你可以用这个内容创建一个Procfile文件:

    web: bundle exec rackup -p $PORT

    并使用命令 foreman start 启动您的应用程序 .

    另外要在日志中显示错误的完整回溯,请考虑在您的Gemfile中添加gem rails_12factor 并确保在 生产环境 组中也可用 .

    这应该允许您至少看到错误的完整回溯 . 希望这对你有所帮助 .

    注意:Sinatra在更改时不会在本地重新加载应用程序 . 如果你想要,我建议你在开发组中使用 rerun gem和 rb-fsevent gems,并为开发环境使用不同的Procfile .

    示例:Procfile.dev web: rerun -- bundle exec rackup -p $PORT

    并使用 foreman start -f Procfile.dev 在本地运行它 . 这将允许您更改代码并查看更改,而无需每次手动重新启动服务器 .

    希望这可以帮助你至少找到erorr .

相关问题