rails 3 + devise:如何使电子邮件确认链接使用安全https(不是http)

jpw*_*ynn 19 https ruby-on-rails devise

如何告诉Devise使用https(不是http)进行所有帐户确认和密码提醒等链接?

[注意:我不是在寻找将所有 http 重定向到https 的解决方案,我只需要设计以确保它创建的链接使用https]

我们的rails 3应用程序使用设计,并且应用程序在https下运行正常,但是,设计始终使用http作为电子邮件确认和密码链接,它通过电子邮件发送给用户.

在我的环境文件中,我尝试更改:

config.action_mailer.default_url_options = { :host => "app1.mydomain.com" }  
Run Code Online (Sandbox Code Playgroud)

 { :host => "https://app1.mydomain.com" }
Run Code Online (Sandbox Code Playgroud)

但可预测的设计创建的链接看起来像 http://https//app1.mydomain.com ....(例如,它预先设置:主机设置与http :)

aNo*_*ble 40

default_url_options接受相同的哈希参数url_for.所以你应该能够做到这一点:

config.action_mailer.default_url_options = { :protocol => 'https', :host => 'app1.mydomain.com' }
Run Code Online (Sandbox Code Playgroud)