【发布时间】:2017-03-10 22:28:09
【问题描述】:
我遇到了一个奇怪的问题,我正在编写 GMAIL 联系表单 - 它将使用现有的 Gmail 用户名和密码向预先指定的 Gmail 帐户发送电子邮件。
我遇到的问题是,当我在本地运行所有内容时,它工作得很好。另一方面,一旦我部署到Heroku...我没有收到消息。当我运行时:heroku logs -t 似乎表明消息已发送,但仍然没有任何消息通过。
配置:
ActionMailer::Base.default_url_options = { :host => 'domain.herokuapp.com' }
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.raise_delivery_errors = true
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:enable_starttls_auto => true,
:domain => 'domain.herokuapp.com',
:user_name => ENV['GMAIL_USERNAME'],
:password => ENV['GMAIL_PASSWORD'],
:authentication => "login"
}
注意:
domain.herokuapp.com 刚刚被替换为我的实际域。
服务器日志截图:
有没有人知道为什么这不起作用或可以向我指出一个资源来解决这个问题?
【问题讨论】:
-
你的环境变量是否存在于heroku服务器上?
ENV['GMAIL_USERNAME']和ENV['GMAIL_PASSWORD'] -
@BorisBresciani 是的,我所有的环境变量都在 Heroku 上
-
你有更新吗?
标签: ruby-on-rails ruby heroku