我的設置:Ubuntu 12.04 LTS,Apache,Phusion Passenger,最新的Ruby和Rails。Rails應用程序錯誤:腳本標題提前結束
當我訪問我的網站時,出現500內部服務器錯誤。 錯誤日誌文件:腳本過早結束標頭
是否有人知道如何解決這個問題?
我的設置:Ubuntu 12.04 LTS,Apache,Phusion Passenger,最新的Ruby和Rails。Rails應用程序錯誤:腳本標題提前結束
當我訪問我的網站時,出現500內部服務器錯誤。 錯誤日誌文件:腳本過早結束標頭
是否有人知道如何解決這個問題?
如果您在config/database.yml
的config/database.yml
中配置了production
的數據庫,並且該數據庫在註釋中提到的服務器上不存在,那麼可能是您的問題的來源,因爲它無法建立數據庫連接。
從您的config/database.yml
該連接並重新啓動應用程序。
是的,那工作!謝謝 – crispychicken
只要在這裏發帖,以防其他人遇到與我一樣的問題。
我跟着Rails tutorial和教程的一部分,確保在secret_token
被動態生成(清單中的鏈接3.2),爲.secret
文件中的應用程序的根。
問題在於應用程序不知道如何向文件寫入令牌,因此我從我的開發.secret
中獲取了值,對其進行了修改並將其保存在服務器上。這使我的應用程序在生產中工作。
確保你的環境是發展:
RailsEnv development
添加到虛擬主機配置
它可能是一個有用的調試步驟,但是它像生產服務器一樣讀取,並且在生產環境中使用開發環境是Not Great – James
確定。我遇到了使用Dreamhost VPS的完全相同的問題。
我在做2次錯誤。首先我沒有運行「束EXEC耙分貝:遷移」在生產模式,即「束EXEC耙分貝:遷移RAILS_ENV =生產的」
但這個問題仍然保持顯示出來。然後我試着Jesper8的回答。我跑了「回扣祕密」和複製的祕密令牌到config/secrets.yml文件盈方的「生產: secret_key_base:」
重新啓動我的應用程序,它的工作
希望這可以幫助別人面臨類似的問題
腳本頭文件的提前結束,這是在你的apache日誌中,並且它自己很沒用。你的Rails日誌會給你更好的信息嗎? – deefour
在production.log中我認爲沒有什麼特別的。最後一行是:連接到由database.yml指定的數據庫。我還沒有使用數據庫,並且服務器上沒有安裝數據庫。但是我在database.yml中指定了一個postgresdb。這可能導致這個錯誤? – crispychicken