问题是:当用户点击"忘记我的密码"在登录页面上,会向他们发送一封电子邮件,其中包含重置密码的链接,但当他们点击电子邮件中的链接时,他们将无法通过浏览器访问该电子邮件。浏览器提供了一个"隐私错误"。
例如,Chrome会显示Your connection is not private. Attackers might be trying to steal your information from [app_name].heroku.com (for example, passwords, messages, or credit cards). NET::ERR_CERT_COMMON_NAME_INVALID
这是 Rails 5 应用,使用设计 gem进行身份验证,并部署到 Heroku 。对这些交易电子邮件使用 SendGrid 。在config / environments / production.rb中,config.force_ssl = true
这不会出现在应用程序的任何其他页面上。
是什么导致浏览器发出此警告,我该如何解决?
答案 0 :(得分:1)
确保您的邮件程序配置为使用https
作为网站网址。更新您的config/environments/production.rb
:
# config/environments/production.rb
Rails.application.configure do
config.action_mailer.default_url_options = { host: 'https://< your domain name>' }
end
您可以根据需要将其添加到其他环境文件中。
对于Heroku,您的主机应为https://<app_name>.herokuapp.com