2

我不确定如何调试它。在本地运行这个 ruby​​/sinatra/thin 应用程序我没有任何问题。然而,在 Heroku 上,应用程序似乎没有加载,显示“未找到。”。我不确定如何理解日志:

2013-03-20T22:27:41+00:00 heroku[api]: Enable Logplex by mymail@gmail.com
2013-03-20T22:27:41+00:00 heroku[api]: Release v2 created by mymail@gmail.com
2013-03-20T22:28:04+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/ host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno= queue= wait= connect= service= status=502 bytes=
2013-03-20T22:28:05+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno= queue= wait= connect= service= status=502 bytes=
2013-03-20T22:28:05+00:00 heroku[router]: at=info code= desc="Blank app" method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno= queue= wait= connect= service= status=502 bytes=
2013-03-20T22:37:08+00:00 heroku[slugc]: Slug compilation started
2013-03-20T22:37:59+00:00 heroku[api]: Scale to web=1 by mymail@gmail.com
2013-03-20T22:37:59+00:00 heroku[api]: Add  config by mymail@gmail.com
2013-03-20T22:37:59+00:00 heroku[api]: Release v3 created by mymail@gmail.com
2013-03-20T22:38:00+00:00 heroku[api]: Release v4 created by mymail@gmail.com
2013-03-20T22:38:00+00:00 heroku[api]: Deploy 0a18d12 by mymail@gmail.com
2013-03-20T22:38:00+00:00 heroku[web.1]: Starting process with command `bundle exec rackup config.ru -p 33969`
2013-03-20T22:38:00+00:00 heroku[slugc]: Slug compilation finished
2013-03-20T22:38:01+00:00 app[web.1]: bash: bundle: command not found
2013-03-20T22:38:02+00:00 heroku[web.1]: Process exited with status 127
2013-03-20T22:38:09+00:00 heroku[web.1]: State changed from starting to up
2013-03-20T22:38:19+00:00 heroku[router]: at=info method=GET path=/ host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=0ms connect=3ms service=79ms status=404 bytes=18
2013-03-20T22:38:21+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=13ms connect=12ms service=69ms status=404 bytes=18
2013-03-20T22:38:21+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=0ms connect=2ms service=21ms status=404 bytes=18
2013-03-20T22:50:19+00:00 heroku[slugc]: Slug compilation started
2013-03-20T22:51:01+00:00 heroku[api]: Release v5 created by mymail@gmail.com
2013-03-20T22:51:01+00:00 heroku[api]: Deploy e18aad6 by mymail@gmail.com
2013-03-20T22:51:01+00:00 heroku[web.1]: State changed from up to starting
2013-03-20T22:51:02+00:00 heroku[slugc]: Slug compilation finished
2013-03-20T22:51:09+00:00 heroku[web.1]: State changed from starting to up
2013-03-20T22:52:32+00:00 heroku[router]: at=info method=GET path=/ host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=1ms connect=6ms service=11ms status=404 bytes=18
2013-03-20T22:52:33+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=0ms connect=2ms service=5ms status=404 bytes=18
2013-03-20T22:52:33+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=1ms connect=4ms service=4ms status=404 bytes=18
2013-03-20T22:52:34+00:00 heroku[router]: at=info method=GET path=/ host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=0ms connect=4ms service=4ms status=404 bytes=18
2013-03-20T22:52:35+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=0ms connect=12ms service=4ms status=404 bytes=18
2013-03-20T22:52:35+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=ancient-kings-2615.herokuapp.com fwd="92.225.106.224" dyno=web.1 queue=0 wait=2ms connect=5ms service=4ms status=404 bytes=18 

有任何想法吗?

21.3.2013 更新

我的宝石文件

source "http://rubygems.org"

# Sinatra
gem "rake"
gem "thin"
gem "sinatra", "~> 1.3.4"
gem "sinatra-contrib", "~> 1.3.1"
gem 'sinatra-assetpack', :require => 'sinatra/assetpack'

# Sass
gem "sass", "~> 3.2.1"

# Mailing related
gem "hominid", "~> 3.0.5"

# Google Analytics: UNCOMMENT IF DESIRED, THEN ADD YOUR OWN ACCOUNT INFO TO config.ru
#gem 'rack-google-analytics', "~> 0.9.2"

我的 config.ru

require 'rubygems'
require 'bundler'

Bundler.require

require './app.rb'
run Sinatra::Application
4

1 回答 1

2

我克隆了 repo,但无法通过 运行它rackup,这是 Heroku 运行应用程序所依赖的。当直接通过 Ruby 运行 Sinatra 应用程序时,它确实有效。以下是我所做的更改,使其可以使用rackup

配置.ru

require 'rubygems'
require 'bundler'

Bundler.require

require File.expand_path 'app.rb', File.dirname(__FILE__)
run App

如果你有子类,运行子类,否则使用 Sinatra::Application

我还删除了所有$:.unshifts我发现的东西,因为它们是邪恶的。

于 2013-03-22T00:51:45.410 回答