3
我在使用自定義域的Heroku中部署了一個Rails 4應用程序。我也有一個分期版本。該應用程序使用舒適的墨西哥沙發。(已解決)Rails 4自定義404會導致Heroku上的postgresql連接失敗
發生以下問題:應用程序將達到所有請求都返回500錯誤的狀態。日誌顯示:
[[email protected] expat]$ heroku logs
ActiveRecord::ConnectionTimeoutError (could not obtain a database connection within 5.000 seconds (waited 5.000 seconds)):
[[email protected] expat]$ heroku pg:info
Connections: 5
[[email protected] expat]$ heroku pg:ps
pid | state | source | running_for | waiting | query
-----+-------+--------+-------------+---------+-------
(0 rows)
[[email protected] expat]$ heroku pg:killall
pg_terminate_backend
----------------------
t
t
t
t
t
(5 rows)
隨後嘗試在一個500錯誤連接的結果和數據庫連接保持爲0
這個問題出現了,我創建使用本指南的自定義錯誤頁之後:http://wearestac.com/blog/dynamic-error-pages-in-rails。
我可以通過創建一個使用該數據庫的404頁面,然後向服務器發出大約5或6個請求來爲不存在的頁面強制執行該問題。
編輯:
而使用靜態自定義404頁通過發出與JPEG擴展名不存在的文件5個或6請求我可以強制問題。日誌中出現以下內容:
Error during failsafe response: Missing template errors/not_found, application/not_found with {:locale=>[:en], :formats=>[:jpeg], :handlers=>[:erb, :builder, :raw, :ruby, :jbuilder, :coffee, :haml]}. Searched in:
2014-02-17T17:26:14.595469+00:00 app[web.1]: * "/app/app/vi
ews"
2014-02-17T17:26:14.594508+00:00 app[web.1]: Completed 500 Internal Server Error in 7ms
任何幫助隔離此問題將不勝感激。在此先感謝
它試圖用404的JPEG圖像作出反應。所以它正在尋找not_found.jpg.erb模板。顯然你沒有那個。我不知道有關Heroku如何做的細節,但是你真的想阻止它在提供靜態內容(如圖像,CSS,js等)時碰到Rails堆棧。 – Grocery
啊,你可能想要安裝:https: //github.com/heroku/rails_serve_static_assets – Grocery
謝謝雜貨店。在一個respond_to塊中處理不同的格式的技巧。 – laertiades