Ruby on rails 通过gem与Apache级别的Rails SSL重定向
我正在研究实现SSL以保护rails应用程序的最佳方法。目前的建议似乎是一直使用SSL。目前似乎有两种方法:Ruby on rails 通过gem与Apache级别的Rails SSL重定向,ruby-on-rails,ruby-on-rails-3,ssl,Ruby On Rails,Ruby On Rails 3,Ssl,我正在研究实现SSL以保护rails应用程序的最佳方法。目前的建议似乎是一直使用SSL。目前似乎有两种方法: 使用gem,如Rack::SSL或Rack::SslEnforcer,详细讨论如下: 在Web服务器级别重定向,此处推荐: 我确信,在Apache级别(假设有人正在运行Apache)进行重定向必须是一种方法,以简化实现和性能 我不明白,也没有看到解决的是,为什么在应用层使用gems会有如此多的精力和关注?DHH甚至有一条评论(上面第一个链接中的最后一条评论)说“Rails 3.1现在
为什么要选择使用其中一个gem来始终使用SSL呢?force\u SSL是添加到Rails 3中的一个配置属性。它使应用程序使用Rack::SSL中间件。 参考: 因此,config.force_ssl是一个方便的工具,可以让您避免弄乱机架堆栈;这是为你做的
在Rails 2.X应用程序中,您将不需要强制ssl,而必须自己注入Rack::ssl或Rack::SslEnforcer。首先,这是Rails社区易于接受的标准。现在,无论何时您想要为Rails应用程序要求https,您都可以翻转这个开关,无论您使用的是什么服务器或其他体系结构,它都可以工作
第二,如果您使用的是Heroku之类的托管服务,您将无法访问服务器配置设置。不过,如果我理解正确,您可以选择使用Web服务器将站点的所有流量重定向到SSL。当然,我已经更新了标题。