我们正在使用标准设计忘记密码邮件:
<p>Hello <%= @resource.email %>!</p> <p>Someone has requested a link to change your password,and you can do this through the link below.</p> <p><%= link_to 'Change my password',edit_password_url(@resource,:reset_password_token => @resource.reset_password_token) %></p>
在生产时,这是为更改密码生成本地主机URL:
http://localhost:3000/users/password/edit?reset_password_token=amqs2q9NcM1FerHKhmzV
鉴于production.rb文件包含我们的域名,这很奇怪:
config.action_mailer.default_url_options = { :host => 'mysite.com' }
为什么没有在URL中使用mysite.com?想法?
谢谢
解决方法
我的猜测是在某处覆盖了config.action_mailer.default_url_options.您是否在配置/初始化程序中有任何影响ActionMailer的文件?
尝试在生产盒上运行rails console,看看是什么
ActionMailer::Base.default_url_options[:host]
回报.