0

我记得在网上的某个地方看到过这个,但我知道很难找到有关它的信息。在 Rails 3.1 中,我在会话控制器的开头有一个方法 force_ssl,我只想在生产环境中调用它,我该怎么做?

为了澄清,代码看起来像这样

class SessionsController < ApplicationController
    force_ssl
end
4

2 回答 2

1

我有一个类似的问题。force_ssl 通过使用 capybara 和 selenium 进行测试引起了问题。这解决了我的问题,测试现在正在运行:

force_ssl if Rails.env.production?

我在某些控制器中使用上面的行。例如在 SessionController 和 UserController 中。

于 2013-05-19T06:23:07.320 回答
0

Rails.env.production?如果当前环境是“生产”,则返回 true。更一般地,Rails.env.somestring?返回 true if Rails.env == "somestring"。从那里你应该很好。

** 编辑 **

实际上,有一种更简单的方法可以仅在生产中使用 ssl。看看这篇文章

于 2012-09-25T18:36:06.620 回答