[Rails] Rails 分 production, test, development 三種環境
Rails 預設提供了三種環境
development environment 開發模式,用在你的開發的時候。
cache_classes = false
,每一次的 HTTP 請求都重新載入類別檔案。
Rails 只有在連線是來自本地端的時候,才會將發生錯誤時的 Call stack trace 資訊給瀏覽器顯示。這個設定將所有連線都當做本地端連線,好讓開發模式時所有人連線都可以看到錯誤訊息。
test environment 測試模式,用在執行測試程式時。
不同於 development 或 production 碰到例外會捕捉例外後,給瀏覽器顯示出 Call stack trace 或 public/500.html
畫面,在 test 模式就不處理,讓例外直接爆出。
production environment 正式上線模式,用在實際的上線運作環境。
cache_classes = true
表示在 production 中,類別檔案載入進記憶體中就快取起來了,大大獲得效能。不像在 development 環境中每一次 HTTP 請求就會重新載入一次。
不同於 development,如果在 production 環境出現例外錯誤,不會顯示程式 Call stack 訊息,而是回傳 public/500.html
頁面。