class method
self.new
Ruby on Rails 5.0.7.2
Since v4.0.13 Last seen in v5.1.7Signature
self.new(app, redirect: {}, hsts: {}, secure_cookies: true, **options)
No documentation comment.
Parameters
-
appreq -
redirectkey = {} -
hstskey = {} -
secure_cookieskey = true -
optionskeyrest
Source
# File actionpack/lib/action_dispatch/middleware/ssl.rb, line 51
def initialize(app, redirect: {}, hsts: {}, secure_cookies: true, **options)
@app = app
if options[:host] || options[:port]
ActiveSupport::Deprecation.warn <<-end_warning.strip_heredoc
The `:host` and `:port` options are moving within `:redirect`:
`config.ssl_options = { redirect: { host: …, port: … } }`.
end_warning
@redirect = options.slice(:host, :port)
else
@redirect = redirect
end
@exclude = @redirect && @redirect[:exclude] || proc { !@redirect }
@secure_cookies = secure_cookies
if hsts != true && hsts != false && hsts[:subdomains].nil?
hsts[:subdomains] = false
ActiveSupport::Deprecation.warn <<-end_warning.strip_heredoc
In Rails 5.1, The `:subdomains` option of HSTS config will be treated as true if
unspecified. Set `config.ssl_options = { hsts: { subdomains: false } }` to opt out
of this behavior.
end_warning
end
@hsts_header = build_hsts_header(normalize_hsts_options(hsts))
end
Defined in actionpack/lib/action_dispatch/middleware/ssl.rb line 51
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionDispatch::SSL