我需要强制SSL在上的所有路由在我的应用中除了landing#index
。为Rails 3.1中的特定路由强制使用SSL
在config/application.rb
,我有:
config.force_ssl = true
然后在landing_controller.rb
,我有:
force_ssl :except => :index
然而,所有的路由仍然被重定向到https
。
有谁知道如何在Rails 3.1+应用程序中有条件地强制使用SSL?
解决方案:
以下内容添加到您的Gemfile
:
gem 'rack-ssl-enforcer'
以下内容添加到您的config/application.rb
:
config.middleware.use Rack::SslEnforcer, :except => [ /\/$/ ], :strict => true
干杯!在'config/application.rb'中修改如下代码:'config.middleware.use Rack :: SslEnforcer,:except => [/ \/$ /],:strict => true' –