[英]Rails 4 force_ssl issue?
測試Rails 4.在Rails 3中,將force_ssl放在我的控制器頂部強制ssl僅用於生產。 這被忽略了開發,這是我想要的行為,並且符合force_ssl的文檔。
在Rails 4中,我發現force_ssl強制ssl甚至用於開發,這不是我想要的行為(易於解決,但需要更多我不想要的代碼)。 此外,我無法在任何發行說明中找到所謂的更改位置,因此我認為它可能是一個錯誤。
我無法通過谷歌搜索找到關於此的錯誤報告,也無法在本網站上找到。 其他人可以確認嗎? 此外,如果是這樣,有人可以將錯誤報告提交給Rails(我沒有設置這樣做的帳戶,並且如果其他人已經擁有帳戶,則不想創建一個帳戶)。
簡單的解決方法,順便說一下:
Rails.env.production? ? force_ssl : nil
這不是一個錯誤 - https://github.com/rails/rails/pull/5023
為您的問題提供的解決方案是
force_ssl unless Rails.env.development?
如果像我一樣,你在代碼中有很多地方使用force_ssl
你可以使用初始化程序保持DRY:
module ActionController::ForceSSL::ClassMethods
alias_method :original_force_ssl, :force_ssl
def force_ssl(options={})
original_force_ssl unless Rails.env.development?
end
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.