2011-08-22 33 views

回答

69

這取決於你如何運行你的應用程序。如果你只是使用rails server命令,你可以這樣做:

rails server -e production 

您也可以只使用RAILS_ENV正如你所提到的(但在一行做到這一點):

RAILS_ENV=production rails server 

如果」關於你的確切生產設置(即你使用Passenger,Mongrel還是Unicorn,還是其他什麼?),我們可以給你一個更具體的答案。

雖然乘客默認在生產模式下運行您的應用程序,除非另有說明,您可以確保雙重。對於後面的Apache客運,你會添加到您的Apache配置:

RailsEnv production 

背後Nginx的乘客,你會添加到您的Nginx的配置:

rails_env production; 
+0

我將在網絡服務器上使用乘客。 – Brian

+0

查看更新的答案。但請注意,乘客默認會自動使用生產模式。 –

+0

好吧,我不認爲這有效:RAILS_ENV =我的環境文件中的生產,因爲當我運行rake db:migrate或rails服務器時,我得到以下錯誤:未定義的局部變量或方法'生產' – Brian

13

這就是答案:

$ RAILS_ENV=production rake db:migrate 
+0

就像一個魅力! – coletrain

+3

這當然只是需要進行數據庫遷移,它不會在生產環境中運行服務器。 – bchurchill