Принудительно использовать SSL для определенных маршрутов в Rails 3.1

Мне нужно принудительно включить SSL на всех маршрутахв мое приложение, за исключением Landing#index.

В config/application.rbу меня есть:

config.force_ssl = true

Затем в landing_controller.rbу меня есть:

force_ssl :except => :index

Однако все маршруты по-прежнему перенаправляются на https.

Кто-нибудь знает, как условно принудительно использовать SSL в приложении Rails 3.1+?

Решение:

Добавьте следующее в ваш Gemfile:

gem 'rack-ssl-enforcer'

Добавьте следующее в ваш config/application.rb:

config.middleware.use Rack::SslEnforcer, :except => [ /\/$/ ], :strict => true
11
задан John Bachir 24 July 2013 в 21:17
поделиться