2013-01-16 3 views
1

Sinatra 앱을 서버 (heroku)에 업로드했습니다. 하지만 애플 리케이션이 마치 다른 곳에서 작동하는 다른 Rails 앱과는 달리 로컬 호스트에있는 것처럼 보인다.Sinatra는 어떤 환경을 사용해야하는지 어떻게 알 수 있습니까?

그럼 Sinatra 앱이 올바른 환경을 사용하는지 확인하려면 어떻게해야합니까? Sinatra는 사용할 환경을 어떻게 알 수 있습니까?

+2

[시나의 문서에서 (HTTP : //www.sinatrarb.com/configuration.html)'set : environment, : production'이 있습니다. –

+0

나는 그것을 보았다. 어떻게 사용합니까? – Alexandre

+0

'app.rb' 또는 기본 파일이 무엇입니까? –

답변

1

자연히 영웅이 환경을 관리 할 것입니다. 기본적으로 "생산"입니다. 다른 유스 케이스에 대해 다른 설정/동작이있는 경우 먼저 해당 설정을 코딩해야합니다. 당신이 "생산"또는 뭔가 다른 명시 적 환경을 설정하려는 이유를 예를

if ENV=="production" 
    # do something 
elsif ENV=="staging" 
    # do something else 
end 

를 들어

나는 확실하지 않다. 그것은 호스팅 환경의 재량에 남겨 두어야합니다.

업데이트 Heroku documentation

또한 업데이트를 위

heroku run printenv 

더 많은 정보는 환경 변수를 나열해야합니다. 시나, 나는하여 config.ru에서 다음을, 그리고

heroku config:add APP_NAME=<myappname> 

:

+0

heroku에서 어느 것을 사용하고 있는지 확인하는 방법은 무엇입니까? – Alexandre

+0

irb'heroku run irb'을 사용하고''ENV''를 사용하여''RACK_ENV "=>"production "' – ch4nd4n

+0

과 같은 것을 볼 수 있어야합니다. 대답이 업데이트되었습니다.'heroku run printenv' – ch4nd4n

0

내가 내 모든 Heroku가 인스턴스에 환경 변수를 추가

# detect environments and setup some passwords 
case ENV['APP_NAME'] 
    when 'prod-damon' 
    # whatever for production 
    when 'dev-damon' 
    # whatever for development on Heroku 
    else 
    # whatever for local 
end 
관련 문제