ruby-on-rails - Rails config.force_ssl = true; Rails/Rack 是否在解密 SSL?
问题描述
这个线程是一个好的开始,但我仍然有问题。 force_ssl 在 Rails 中做了什么?
config.force_ssl = true
所有这些都与您在production.rb
文件中设置时发生
的情况有关。
使您的 SSL 端点成为您的服务器(比如 nginx)是有意义的。从这个角度来看,我知道 nginx 需要访问 SSL 证书的私钥才能解密加密的 SSL 流量。这是我非常粗略的理解。
从那里,服务器可以通过 http 将该信息发送到 Rails 应用程序(例如 puma 服务器),然后 Rails 应用程序将处理未加密的请求,创建必要的内容以发送回,然后将其发送回链将由服务器(nginx)重新加密并发送回用户。
这是我的松散理解。
- 如果这是 [通常] 它是如何工作的,那么如果 Rails 以 http 形式获取请求,那么 Rails 如何知道何时强制重定向到 https?
- 如果这不是 [通常] 它是如何工作的,并且 Rails 实际上正在解密有效负载,那么如果没有 SSL 证书的私钥,它怎么能做到这一点?
解决方案
推荐阅读
- amazon-web-services - 在 Kinesis Data Analytics 中为缩略图窗口使用自定义时间戳时无法聚合无限流
- javascript - 如果有人访问我们的网站,如何打开安卓应用程序?
- javascript - 在 highcharts 中组合图表
- javascript - 我确实在 UI 上获得了对象属性
- swift - 在 URL 处获取文件并将它们添加到目录 - Swift
- firebase - 在 Ionic 上使用 google plus 进行身份验证
- javascript - React应用程序中src文件夹的Webpack别名?
- vbscript - 如何让VBS给自己权限,以后不问用户?
- javascript - wordpress header javascript - TypeError: document.getElementById(...) is null
- ssh - 如何通过 ssh 从 python 到服务器建立与 AWS rds 的连接?