我是Rails和Nginx的新手。我被要求將自定義錯誤頁面添加到我們的應用程序。我在這個網站上發現了這樣做的說明,我的自定義錯誤頁面在本地呈現得很好。當我轉到網址/no_such_page
時,我看到了相應的頁面。當我將代碼部署到我們的測試服務器上運行的nginx,並嘗試相同的URL,我看到以下內容:Rails自定義錯誤頁面不會在Nginx上呈現
500內部服務器錯誤 如果您是此網站的管理員,然後請參閱此網絡應用程序的日誌文件和/或Web服務器的日誌文件以查找出了什麼wrong.`
在nginx的服務器,如果我去的URL \404
,然後我看到我的網頁,所以我知道它呈現確定。 我的本地計算機和服務器都在development
環境下運行。
我已經添加了這config\development.rb
:
config.consider_all_requests_local = false
config.exceptions_app = self.routes
以下是我已經添加到routes.rb
:
%w(404 500).each do |code|
get code, to: "errors#show", :code => code, :via => :all
end
和我errors_controller看起來是這樣的:
class ErrorsController < ApplicationController
def show
status_code = params[:code] || 500
render status_code.to_s
end
end
有誰知道我的nginx公司有沒有什麼特別的事情需要我去做nfig使這項工作?
謝謝你馬特!我想我被抓住了它在本地工作而不在服務器上的事實,所以我在指責nginx。我在'var/log/nginx'中發現了我的錯誤日誌,它指向我正在忽略的東西。現在全部設置。 – zilla