Très petite histoire. Les URL générées par l'assistant d'URL de Rails seront basées sur «http».
Rails.application.routes.url_helpers.root_url
=> "http://localhost:3000/"
Vous devez spécifier l'option protocol
pour la rendre basée sur https`.
Rails.application.routes.url_helpers.root_url(protocol: 'https')
=> "https://localhost:3000/"
Si vous ne voulez pas spécifier l'option protocol
à chaque fois, vous pouvez changer la valeur par défaut en définissant default_url_options
.
Rails.application.routes.default_url_options[:protocol] = 'https'
Au fait, dans les prochains Rails, si Rails.application.config.force_ssl
est true
, la valeur par défaut sera automatiquement définie sur https
.
(PR) https://github.com/rails/rails/pull/37480
Il n'est plus courant d'utiliser https, donc je m'en souviens maintenant, mais jusqu'à ce que le prochain Rails soit publié, c'est une bonne idée de l'écrire sous config / initializers
.
config/initializers/protocol_default_to_https.rb
# force_Si ssl est vrai, remplacez l'URL par https.
if Rails.application.config.force_ssl
Rails.application.routes.default_url_options[:protocol] = 'https'
end
Recommended Posts