ruby-on-rails – 强制使用Rails 3.1中特定路由的SSL

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 强制使用Rails 3.1中特定路由的SSL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要在我的应用程序中的所有路由上强制SSL,除了着陆#index.

在config / application.rb中,我有:

config.force_ssl = true@H_404_5@ 
 

然后在landing_controller.rb中,我有:

force_ssl :except => :index@H_404_5@ 
 

但是,所有路线仍然被重定向到https.

有没有人知道如何有条件地强制在Rails 3.1应用程序中的SSL?

解:

将以下内容添加到您的Gemfile中:

gem 'rack-ssl-enforcer'@H_404_5@ 
 

将以下内容添加到您的config / application.rb中:

config.middleware.use Rack::SslEnforcer,:except => [ /\/$/ ],:strict => true@H_404_5@

解决方法

我在stackoverflow here上提出了一个类似的问题,并被告知要使用 https://github.com/tobmatth/rack-ssl-enforcer.我还没有尝试过,但是基于自述,它似乎解决了在某些路由上有条件地执行ssl的问题.

猜你在找的Ruby相关文章