对rails中的特定控制器跳过/禁用force_ssl

我需要在我的应用程序中的所有路由上强制使用SSL,除了message#new controller。

config/environments/production.rb ,我有:

 config.force_ssl = true 

现在所有路由都重定向到https,现在我想禁用message#new controller。

有谁知道如何在Rails 4+应用程序中禁用特定控制器的强制SSL?

根据以下文档应该工作( 但仅适用于rails> 5版本 ):

 config.ssl_options = { redirect: { exclude: -> request { request.path =~ /healthcheck/ } } } 
 skip_before_action :verify_authenticity_token force_ssl except: [:index,:create] 

它对我有用。

MessagesController.rb执行此操作 –

  force_ssl except: [:new]