我看到的任何单一路径都是Heroku欢迎页面,根据here发送502状态码。即使Procfile正在运行,Heroku显示“空白应用程序”
也根据此heroku HTTP routing guide它也发送502,如果有无效的应用程序发送的响应。我最近部署了另一个基于同一个锅炉的应用程序,而且这个应用程序没有太大的区别。
我想我可以想到的两件事是,这个应用程序使用open-uri
接受用户输入,并且它发送(消毒)html的响应。但我不知道这个在Heroku上的恢复,我可以SSH和open("http://google.com").read
罚款。
这里是我的procfile:
web: env RACK_ENV=production bundle exec thin start -p $PORT
而且我config.ru
:
require './server.rb'
run Server
在本地主机上,我使用bundle exec thin start
,一切工作正常。
我看到这个输出heroku ps
:
=== web (Free): env RACK_ENV=production bundle exec thin start -p $PORT (1)
web.1: up 2017/03/16 17:53:44 -0700 (~ 19m ago)
我也SSH方式来检查应用程序可以运行,数据库设置:
heroku run "irb -r ./server.rb"
Running irb -r ./server.rb on ⬢ music-sharing... up, run.2985 (Free)
irb(main):001:0> Audio.count
=> 0
在heroku logs --tail
我看到这种做出请求后的东西:
2017-03-17T01:45:44.022727 + 00:00 heroku [router]:at = info code = H81 desc =“空白应用”方法= GET路径=“/ favicon.ico”host = music-sharing.herokuapp.com request_id = 2e41fca8-0913-4a09-8635-2a26586c3234 fwd =“73.170.238.232”dyno = connect = service =状态= 502字节=协议= HTTPS
我也取得了一定的应用程序是在根目录:
heroku run bash
Running bash on ⬢ music-sharing... up, run.5955 (Free)
~ $ ls
bin db_config.rb Procfile server.rb
config.ru Gemfile Rakefile tmp
crud_generator.rb Gemfile.lock README.md vendor
db models.rb server_push.rb ws.rb
~ $