1

我正在为客户完成一个 Rails 4.2 应用程序,并且在生产环境中启用了 force_ssl 选项。现在一切正常,但客户端需要嵌入一个从非安全页面获取的 iframe。这个不安全的页面我无法控制,并且该页面不支持 https .... :/

除了这个控制器操作之外,是否有任何解决方案可以让我在任何地方强制执行 SSL?

谢谢

4

2 回答 2

2

如果您正在谈论整个控制器层次结构中的独特操作,您可以排除此操作。

class ApplicationController
  force_ssl except :unique_action_name

end

有关详细信息,请参阅参考资料

于 2015-12-23T00:15:37.937 回答
0

问题解决了!我最终使用https://github.com/tobmatth/rack-ssl-enforcer来设置我需要的 SSL 约束:

config.middleware.use Rack::SslEnforcer, except: '/search', strict: true

force_ssl 控制器类方法很棒,但我实际上需要更细粒度的控制,因为我不需要安全的页面实际上是 CMS 控制器中的用户生成页面。所以我实际上不能排除一个动作,而是一个实际的用户生成的 URL。我知道这听起来可能很奇怪,但它非常适合我奇怪的情况。:)

谢谢!

于 2015-12-23T01:18:57.720 回答