2012-01-19 5 views
3

로컬로 작업하는 Sinatra 사이트가 있습니다.Sinatra + 콧수염을 Heroku에 어떻게 배치합니까?

require './web' 

use Rack::ShowExceptions 

run App.new 

그리고 다음 터미널에서 당신은 'rackup'와 웹 서버가 해고되고 모두가 잘 실행할 수 있습니다 : 나는이 같은 config.ru를 정의하는 "rackup"일을, 사용하고 있습니다.

그러나 영웅에게 배포 할 때 오류 메시지가 표시되지 않지만 사이트를 방문하면 표준 "Sinatra는이 ditty를 알지 못합니다"라는 오류가 표시됩니다. 그것은 이시나 시작 같은를 표시 한 후 중지

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의 조각입니다 계속 뛰지 않습니다. 누군가가 요청을 그런 때 분명히 서버는 Sinatra::Base에서 상속 할 때마다 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

을 반환 당신이해야 require 'sinatra/base'보다는 당신의 web.rb 파일의 맨 위에 require 'sinatra'.

스 니펫을 사용하여 간단한 테스트를 실행하고이를 복제하여 오류를 수정할 수있었습니다.

관련 문제