2012-01-19 8 views
3

私はローカルで働いて本当に基本的なシナトラのサイトを持っています。Sinatra +口ひげをHerokuにどのように展開できますか?

require './web' 

use Rack::ShowExceptions 

run App.new 

とは、端末にあなたが「rackup」とウェブサーバが解雇され、すべてがうまく実行することができます:私はあなたがこのようなconfig.ruを定義する「rackup」のものを、使用しています。

しかし、これを英雄に配備するとエラーメッセージは表示されませんが、サイトにアクセスすると標準の「Sinatraはこのdittyを知らない」というエラーが表示されます。ここで

は私web.rbそれが助け場合の抜粋です:

require 'sinatra' 
require 'maruku' 
require 'mustache/sinatra' 
require 'nokogiri' 

class App < Sinatra::Base 
    register Mustache::Sinatra 
    require './views/layout' 

    set :mustache, { 
     :views  => './views/', 
     :templates => './templates/' 
    } 

    get '/' do 
     "FUUUUUUUUUUUUU" 
    end 
  • 編集

シナトラが起動してから停止するようにHerokuのログを見ると、それ表示されます。それは走り続けない。誰かが作るときに明らかに要求がサーバーはweb.rbファイルの先頭に404

2012-01-20T12:39:23+00:00 app[web.1]: == Sinatra/1.1.0 has taken the stage on 16662 for development with backup from Thin 
2012-01-20T12:39:23+00:00 app[web.1]: >> Thin web server (v1.2.7 codename No Hup) 
2012-01-20T12:39:23+00:00 app[web.1]: >> Maximum connections set to 1024 
2012-01-20T12:39:23+00:00 app[web.1]: >> Listening on 0.0.0.0:16662, CTRL+C to stop 
2012-01-20T12:39:23+00:00 app[web.1]: == Sinatra has ended his set (crowd applauds) 
2012-01-20T12:39:23+00:00 app[web.1]: 
2012-01-20T12:39:23+00:00 app[web.1]: >> Stopping ... 
2012-01-20T12:39:23+00:00 heroku[web.1]: Process exited 
2012-01-20T12:39:24+00:00 heroku[router]: GET young-river-2245.herokuapp.com/ dyno=web.1 queue=0 wait=0ms service=48ms status=404 bytes=409 
+1

あなたはプロジェクトのディレクトリに 'Herokuののlogs'を実行しているから何かを得ていますか? –

+0

任意の明らかなエラーがあるようには思えない、シナトラが他の面白いステージと、このような、何を撮るの言及。 – qui

+0

あなたのリクエストはありますか? 404と? –

答えて

0

あなたはSinatra::Baseから継承するたびにする必要がありrequire 'sinatra/base'ではなくrequire 'sinatra'を返します。

私はちょうどあなたのスニペットを使用して簡単なテストを実行し、複製した後、これを行うことによって、エラーを修正することができました。

関連する問題