You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Devise重置密码链接含www失效,去除www即可正常使用求助

解决Devise重置密码带www链接失效的问题

问题根源

你的配置里default_url_options的host用了Heroku临时域名,而非实际业务域名,同时SMTP设置的domain为带www的域名,导致生成的重置链接域名与正常可用的裸域名不一致,触发token验证失败。

修复步骤

  1. 修正default_url_options的host配置
    将host改为不带协议前缀的目标域名,若想默认生成裸域名链接,配置如下:

    config.action_mailer.default_url_options = { host: 'thesofiaproject.ai', protocol: 'https' }
    

    若希望默认生成带www的链接,就将host设为'www.thesofiaproject.ai',注意host字段仅填域名,不要加https://。

  2. 统一SMTP的domain配置
    SMTP的domain需与实际使用的域名保持一致,若裸域名可用,修改为:

    :domain => 'thesofiaproject.ai',
    

    若后续计划统一用www域名,可保留www.thesofiaproject.ai,但需确保www域名能正确解析,并与裸域名共享token验证逻辑。

  3. 额外检查项

    • 确认裸域名和www域名均已正确解析到Heroku服务器,且Heroku应用设置中已添加这两个域名。
    • 检查Rails的session存储配置,确保cookie支持主域名下的子域名共享,比如:
      Rails.application.config.session_store :cookie_store, key: '_thesofiaproject_session', domain: '.thesofiaproject.ai'
      

验证

修改配置后重新部署应用,发送测试重置邮件,点击链接确认是否能正常跳转并通过token验证。

内容的提问来源于stack exchange,提问作者GhostRider

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 11:40:58